<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>glass cube</title><link>http://blogs.msdn.com/misterm/default.aspx</link><description /><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>'paragraphing' in Silverlight 1.1</title><link>http://blogs.msdn.com/misterm/archive/2007/11/26/paragraphing-in-silverlight-1-1.aspx</link><pubDate>Mon, 26 Nov 2007 23:51:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6534864</guid><dc:creator>mr.m</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/misterm/comments/6534864.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=6534864</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=6534864</wfw:comment><description>&lt;P&gt;I recently had to whip up a small application to demonstrate the programmatic interface for silverlight 1.1.&amp;nbsp; Using a tag cloud as a suitable project, I quickly became aware of the difficulty of X-Y only positioning for that type of scenario.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;I came up with a solution using the 'ActualHeight' and 'ActualWidth' properties:&lt;BR&gt;&lt;FONT color=#0000ff size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;&lt;FONT color=#000000&gt;[] tags = &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;&lt;FONT color=#000000&gt;[] { &lt;/FONT&gt;&lt;SPAN style="COLOR: #a31515"&gt;"asp.net"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;, &lt;/FONT&gt;&lt;SPAN style="COLOR: #a31515"&gt;"sqlServer"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;, &lt;/FONT&gt;&lt;SPAN style="COLOR: #a31515"&gt;"bookies"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;, &lt;/FONT&gt;&lt;SPAN style="COLOR: #a31515"&gt;"babaganoush"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;, &lt;/FONT&gt;&lt;SPAN style="COLOR: #a31515"&gt;"frankie"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;, &lt;/FONT&gt;&lt;SPAN style="COLOR: #a31515"&gt;"johnnie"&lt;/SPAN&gt;&lt;FONT color=#000000&gt; };&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;double&lt;/SPAN&gt;&lt;FONT color=#000000&gt; currentX = 0;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;double&lt;/SPAN&gt;&lt;FONT color=#000000&gt; currentY = 0;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;double&lt;/SPAN&gt;&lt;FONT color=#000000&gt; highestHeight = 0;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;foreach&lt;/SPAN&gt;&lt;FONT color=#000000&gt; (&lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;&lt;FONT color=#000000&gt; tag &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;in&lt;/SPAN&gt;&lt;FONT color=#000000&gt; tags)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT color=#000000&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; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #2b91af"&gt;TextBlock&lt;/SPAN&gt;&lt;FONT color=#000000&gt; tagblock = &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: #2b91af"&gt;TextBlock&lt;/SPAN&gt;&lt;FONT color=#000000&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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; &lt;/SPAN&gt;tagblock.Text = tag;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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; &lt;/SPAN&gt;tagblock.FontFamily = &lt;/FONT&gt;&lt;SPAN style="COLOR: #a31515"&gt;"Verdana"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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; &lt;/SPAN&gt;tagblock.FontSize = 10;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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; &lt;/SPAN&gt;tagblock.Foreground = &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: #2b91af"&gt;SolidColorBrush&lt;/SPAN&gt;&lt;FONT color=#000000&gt;(&lt;/FONT&gt;&lt;SPAN style="COLOR: #2b91af"&gt;Colors&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.Black);&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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; &lt;/SPAN&gt;tagblock.MouseEnter += &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: #2b91af"&gt;MouseEventHandler&lt;/SPAN&gt;&lt;FONT color=#000000&gt;(Tag_MouseEnter);&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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; &lt;/SPAN&gt;tagblock.MouseLeave += &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: #2b91af"&gt;EventHandler&lt;/SPAN&gt;&lt;FONT color=#000000&gt;(Tag_MouseLeave);&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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; &lt;/SPAN&gt;highestHeight = (tagblock.ActualHeight &amp;gt; highestHeight) ? tagblock.ActualHeight : highestHeight;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT color=#000000&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; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt;&lt;FONT color=#000000&gt; ((currentX != 0) &amp;amp;&amp;amp; (currentX + tagblock.ActualWidth &amp;gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;this&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.TagCloudCanvas.Width))&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT color=#000000&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;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// reset width &amp;amp; go to the next line&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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&gt;currentX = 0;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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&gt;currentY = currentY + highestHeight + 5;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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&gt;highestHeight = 0;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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; &lt;/SPAN&gt;tagblock.SetValue(&lt;/FONT&gt;&lt;SPAN style="COLOR: #2b91af"&gt;Canvas&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.LeftProperty, currentX);&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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; &lt;/SPAN&gt;tagblock.SetValue(&lt;/FONT&gt;&lt;SPAN style="COLOR: #2b91af"&gt;Canvas&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.TopProperty, currentY);&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT color=#000000&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; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;this&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.TagCloudCanvas.Children.Add(tagblock);&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&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; &lt;/SPAN&gt;currentX = currentX + tagblock.ActualWidth + 5;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;HTH!&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=6534864" width="1" height="1"&gt;</description></item><item><title>The Open-Source debate...continued...</title><link>http://blogs.msdn.com/misterm/archive/2007/06/04/the-open-source-debate-continued.aspx</link><pubDate>Tue, 05 Jun 2007 01:07:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:3086846</guid><dc:creator>mr.m</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/misterm/comments/3086846.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=3086846</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=3086846</wfw:comment><description>&lt;P&gt;I was reading a &lt;A class="" href="http://reverendted.wordpress.com/2007/05/23/can-we-trust-microsoft-with-claimspace/" mce_href="http://reverendted.wordpress.com/2007/05/23/can-we-trust-microsoft-with-claimspace/"&gt;post&lt;/A&gt; today regarding whether or not the community could trust us (Microsoft) in regards to&amp;nbsp;the rapport framework.&lt;/P&gt;
&lt;P&gt;A very well written article, it struck many points that I had not considered as of yet and that will be quite useful in the days to come.&lt;/P&gt;
&lt;P&gt;The topic of Open-Source was flitting about in the comments and the thing that occurred to me (*again*) is that if the software that we produce here wasn't worth the money to pay for, nobody would be buying it.&amp;nbsp; The fact that Microsoft protects its investments with patented work, much in the same way that any business would, should not surprise.&lt;/P&gt;
&lt;P&gt;So I'm going to guess then, that the main complaint is that software shouldn't be able to be patented.&amp;nbsp; &lt;EM&gt;I'll await replies&lt;/EM&gt; to see if I've really missed the mark here, but in closing I'll say that to change the rules after the patents have been issued is a bit untowards.&amp;nbsp; At what point then would all patentable items be up for the same danger?&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3086846" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/misterm/archive/tags/OpenSource/default.aspx">OpenSource</category><category domain="http://blogs.msdn.com/misterm/archive/tags/SoftwarePatents/default.aspx">SoftwarePatents</category><category domain="http://blogs.msdn.com/misterm/archive/tags/OSD/default.aspx">OSD</category></item><item><title>Brain Dump (potential mashup)</title><link>http://blogs.msdn.com/misterm/archive/2007/05/29/brain-dump-potential-mashup.aspx</link><pubDate>Tue, 29 May 2007 21:33:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2973250</guid><dc:creator>mr.m</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/misterm/comments/2973250.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=2973250</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=2973250</wfw:comment><description>&lt;P&gt;I was talking with a colleague of mine the other idea about an idea I had surrounding information gathering:&amp;nbsp;brain dump.&amp;nbsp; &amp;lt;disclaimer&amp;gt;I haven't spent a lot of time searching about to see if it's been done yet, but nonetheless, I feel it's worthwhile to mention it.&amp;lt;/disclaimer&amp;gt;&lt;/P&gt;
&lt;P&gt;Basically, the idea spawned after I was talking with &lt;A class="" href="http://blogs.msdn.com/korbyp" target=_blank mce_href="http://blogs.msdn.com/korbyp"&gt;Korby&lt;/A&gt; about aquiring some land out in the mountains.&amp;nbsp; A Washington native, very versed in different aspects of the terrain, he had a lot to offer.&amp;nbsp; He also showed me a &lt;A class="" href="http://www.co.chelan.wa.us/bl/bl_mapoptix_tips.htm" target=_blank mce_href="http://www.co.chelan.wa.us/bl/bl_mapoptix_tips.htm"&gt;nifty web tool from Chelan county&lt;/A&gt; that allows you to drill in to loads of publicly available information on specific land plots; very cool.&lt;/P&gt;
&lt;P&gt;Thus came the idea: wouldn't it be nice to: pull everything about land management, aquisition, community activities, etc. etc. from a trusted source programatically so that it'd be a button click / url away from me at any time anywhere I can access the web.&amp;nbsp; Offline availability / download-ability / etc. is a phase 2 idea.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;With tagging, and the coming availability of trust / recognition&amp;nbsp;systems, this idea is not too far off from at least an alpha.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2973250" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/misterm/archive/tags/brain+dump/default.aspx">brain dump</category><category domain="http://blogs.msdn.com/misterm/archive/tags/mashup/default.aspx">mashup</category></item><item><title>Hmm - how do you reference a remote .css inline?</title><link>http://blogs.msdn.com/misterm/archive/2007/04/04/hmm-how-do-you-reference-a-remote-css-inline.aspx</link><pubDate>Thu, 05 Apr 2007 00:25:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2027337</guid><dc:creator>mr.m</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/misterm/comments/2027337.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=2027337</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=2027337</wfw:comment><description>&lt;P&gt;Well, the short answer is (&lt;EM&gt;i think)&lt;/EM&gt;: you can't.&amp;nbsp; Early on in my search for the answer, I ran across &lt;A class="" href="http://www.w3schools.com/css/css_howto.asp" mce_href="http://www.w3schools.com/css/css_howto.asp"&gt;this article&lt;/A&gt; on w3schools stating that you can either:&lt;BR&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;create your stylesheet explicitly&lt;EM&gt; in the &amp;lt;head&amp;gt;&lt;/EM&gt; element of the page (&amp;lt;head&amp;gt;&amp;lt;style&amp;gt;blar blar blar...)&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;reference a common stylesheet&lt;EM&gt; in the &amp;lt;head&amp;gt; &lt;/EM&gt;element of the page (&amp;lt;head&amp;gt;&amp;lt;link href="style.css" blar blar blar...)&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;inline the style qualities on the elements in question (&amp;lt;p style="background:red;"&amp;gt;this isn't so hot...&amp;lt;/p&amp;gt;)&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P mce_keep="true"&gt;Well, I thought that I'd fiddle around anyways to just see what I could find and got all excited when I saw the 'src' sub attribute of the style property on a div tag:&lt;/P&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;div&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;style&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;="src:url(StyleSheet.css)"&amp;gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#000000&gt;Unfortunately that is only for the url of the &lt;EM&gt;font&lt;/EM&gt; to download.&amp;nbsp; :(&amp;nbsp; I was really hoping to avoid inline for the scenario I need to implement but I might just have to.&amp;nbsp; Any help would be appreciated.&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2027337" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/misterm/archive/tags/stylesheet/default.aspx">stylesheet</category><category domain="http://blogs.msdn.com/misterm/archive/tags/css/default.aspx">css</category></item><item><title>VS 2005 on Vista service pack available</title><link>http://blogs.msdn.com/misterm/archive/2007/03/22/vs-2005-on-vista-service-pack-available.aspx</link><pubDate>Fri, 23 Mar 2007 01:31:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1933467</guid><dc:creator>mr.m</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/misterm/comments/1933467.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=1933467</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=1933467</wfw:comment><description>&lt;P&gt;Thanks to my friendly office mate, I was informed of the latest service pack for studio developers running vista.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=90e2942d-3ad1-4873-a2ee-4acc0aace5b6&amp;amp;DisplayLang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=90e2942d-3ad1-4873-a2ee-4acc0aace5b6&amp;amp;DisplayLang=en&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Just got through the install so I don't have any sound feedback on it yet.&amp;nbsp; If I notice anything notable, I'll be sure to mention it here.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1933467" width="1" height="1"&gt;</description></item><item><title>Heading over the mountains, this coming week...</title><link>http://blogs.msdn.com/misterm/archive/2007/02/02/heading-over-the-mountains-this-coming-week.aspx</link><pubDate>Sat, 03 Feb 2007 01:27:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1585379</guid><dc:creator>mr.m</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/misterm/comments/1585379.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=1585379</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=1585379</wfw:comment><description>&lt;P&gt;As mentioned in his &lt;A class="" href="http://blogs.msdn.com/dseven/archive/2007/01/31/boise-code-camp-here-we-come.aspx" target=_blank mce_href="http://blogs.msdn.com/dseven/archive/2007/01/31/boise-code-camp-here-we-come.aspx"&gt;latest post&lt;/A&gt;, I'm accompanying my boss and some coworkers to this year's Boise Code Camp next weekend.&amp;nbsp; Having never been to a BCC event in the past, I'm excited at the prospect - also 'cos I'll be helping out with one of Doug's presentations (Test Driven Development Using VSTS).&amp;nbsp; In addition to some of the TDD basics, hopefully we'll have time to get over some of the helpful tidbits we've picked up here and there (best ways to view new tests in the vsdmi, creating checkin policies, etc).&amp;nbsp; If not, it'll still be a good track to somebody who's either looking for more info in TDD or somebody that knows what it is but hasn't yet incorporated it into VSTS.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1585379" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/misterm/archive/tags/TDD+BoiseCodeCamp/default.aspx">TDD BoiseCodeCamp</category></item><item><title>Estimating &amp; Planning (training)</title><link>http://blogs.msdn.com/misterm/archive/2007/02/02/estimating-planning-training.aspx</link><pubDate>Sat, 03 Feb 2007 01:09:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1585323</guid><dc:creator>mr.m</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/misterm/comments/1585323.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=1585323</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=1585323</wfw:comment><description>&lt;P&gt;Wednesday this week, I was fortunate in that one of my teammates arranged for &lt;A class="" href="http://www.mountaingoatsoftware.com/" target=_blank mce_href="http://www.mountaingoatsoftware.com/"&gt;Mike Cohen&lt;/A&gt;, a known agile guru, to come and present his &lt;A class="" href="http://www.mountaingoatsoftware.com/aep_training" target=_blank mce_href="http://www.mountaingoatsoftware.com/aep_training"&gt;estimating &amp;amp; planning course&lt;/A&gt; to our group.&amp;nbsp; He was a great teacher who presented well and the material was good - so 2 thumbs up.&lt;/P&gt;
&lt;P&gt;One of the interesting topics that came up was measuring units of work (hours, points, bananas, etc).&amp;nbsp; In one exercise he had the class divide into two groups bent on proving why one method was better than the other (the two we were using at the time were 'Ideal Days' and 'Story Points').&amp;nbsp; I found it was easier to argue the 'ideal day' due to: the familiarity of the concept 'day' and touting the ease at which an ideal day (or collection of) was converted to actual days (say, for mgmt or mktg), easier learning curve, etc.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;All in all, a good use of my group's time - I'm glad we have the ability to take a day here and there to learn together.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1585323" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/misterm/archive/tags/agile+planning+estimation/default.aspx">agile planning estimation</category></item><item><title>Hot Topic: REST</title><link>http://blogs.msdn.com/misterm/archive/2007/01/17/hot-topic-rest.aspx</link><pubDate>Thu, 18 Jan 2007 02:36:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1485701</guid><dc:creator>mr.m</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/misterm/comments/1485701.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=1485701</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=1485701</wfw:comment><description>&lt;P&gt;Today brought about the architectural decision that our suite of refactored community apps would be represented in &lt;A class="" href="http://en.wikipedia.org/wiki/Representational_State_Transfer" mce_href="http://en.wikipedia.org/wiki/Representational_State_Transfer"&gt;REST&lt;/A&gt;ful manner.&amp;nbsp; For what that means to us in the short and skinny is that our application endpoint (say Blogs) would be exposed in such a fashion that depending on the URL that we send to it, we'll get either HTML, XML or RSS, with the adoption of other formats (JSON) potentially coming in later releases.&lt;/P&gt;
&lt;P&gt;As it is a great decision IMHO, the timeliness of it being so near to our deadline and the fact that our team has not yet implemented a RESTful app has a couple of people concerned but I think that in the end, all will be happy we made the leap.&amp;nbsp; Hopefully, I'll have URLs for these types of things in the betaplace coming forth so that the mashers can start fiddling around with them.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1485701" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/misterm/archive/tags/REST/default.aspx">REST</category></item><item><title>Planning meeting tips (based on recent experience)</title><link>http://blogs.msdn.com/misterm/archive/2007/01/08/planning-meeting-tips-based-on-recent-experience.aspx</link><pubDate>Tue, 09 Jan 2007 03:45:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1436625</guid><dc:creator>mr.m</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/misterm/comments/1436625.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=1436625</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=1436625</wfw:comment><description>&lt;P&gt;Having been involved in several, several-hour planning meetings in the last few days, I thought I'd share some experience-based advice.&amp;nbsp;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;Make sure that there is a driver;&lt;/STRONG&gt;&amp;nbsp;someone who:&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;plans the meeting&lt;/STRONG&gt; (determines what will be the result of the meeting and usually provides the following information)&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;sets the agenda&lt;/STRONG&gt;.&amp;nbsp; Critical for all but the most trivial of meetings.&amp;nbsp; Provides a track to keep conversation on, ensure time is being spent in interest of and so forth.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;sets expectations of attendees&lt;/STRONG&gt;.&amp;nbsp; A brainstorming session about the new profile API signatures would not need as much preparation work as say, a sprint post-mortem, where you want to spend the meeting time &lt;EM&gt;going over&lt;/EM&gt; what went well and what didn't; not &lt;EM&gt;figuring out&lt;/EM&gt; during the meeting what went well and what didn't.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;lays the ground rules&lt;/STRONG&gt; (i.e. "No laptops during meeting session", "Speaking privileges are obtained only by physical contact with the magic-speaking-wand", etc. etc.)&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;keeps things on track&lt;/STRONG&gt;.&amp;nbsp; Use the agenda to make sure that you are getting out of the meeting what you signed up to get out of it.&amp;nbsp; If topic strays from what's most important, you have a great way of cracking people on the knuckles.&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Don't be afraid to hit the brakes&lt;/STRONG&gt;&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;If the meeting is a wash (perhaps somebody else set up the meeting and it is being poorly executed), feel free to determine what it will take to get things back on course and, if necessary, postpone the meeting.&lt;/LI&gt;&lt;/UL&gt;&lt;/OL&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1436625" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/misterm/archive/tags/meetings/default.aspx">meetings</category></item><item><title>Cool Tool:  ReSharper</title><link>http://blogs.msdn.com/misterm/archive/2006/12/04/cool-tools-resharper.aspx</link><pubDate>Tue, 05 Dec 2006 01:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1207930</guid><dc:creator>mr.m</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/misterm/comments/1207930.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=1207930</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=1207930</wfw:comment><description>For those interested in sprucing up there development experience with C# in VS (03 || 05), check out &lt;A class="" href="http://www.jetbrains.com/resharper/" mce_href="http://www.jetbrains.com/resharper/"&gt;ReSharper&lt;/A&gt;.&amp;nbsp; It was brought to my attention by &lt;A class="" href="http://blogs.msdn.com/dseven" mce_href="http://blogs.msdn.com/dseven"&gt;my boss&lt;/A&gt;, who I believe heard about it through the grapevine via the CodePlex gang.&amp;nbsp; I'm pretty excited to give it&amp;nbsp;a try as there are lots of nice features to be utilized&amp;nbsp;(2 minutes to go on the&amp;nbsp;trial install).&amp;nbsp; If there are any significant epiphanies reached whilst using it (limited, of course, to work-specific epiphanies that is) they'll be posted here.&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1207930" width="1" height="1"&gt;</description></item><item><title>ugly babies &amp; agile development</title><link>http://blogs.msdn.com/misterm/archive/2006/11/01/ugly-babies-agile-development.aspx</link><pubDate>Wed, 01 Nov 2006 23:33:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:926848</guid><dc:creator>mr.m</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/misterm/comments/926848.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=926848</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=926848</wfw:comment><description>&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;One of the first things I learned in a role as a developer was to never fall in love with my code; aka make it 'my baby'.&amp;nbsp; It took a little while to actually get there, but now I am usually one of the first to peg my babies as 'ugly,' as I know most all of their faults already.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Midway into my current project (which is being developed in an &lt;A href="http://en.wikipedia.org/wiki/Agile_development" target=_blank mce_href="http://en.wikipedia.org/wiki/Agile_development"&gt;agile&lt;/A&gt; approach and is targeted for 'beta' quality), I'm slightly struggling with ugly-baby syndrome again.&amp;nbsp; Mainly, we're trying to get something shipped so that the teams who will be utlizing it can give us the detailed feedback that we (*collectively*) aren't taking the time to gather beforehand.&amp;nbsp; Mainly, it's the non-visible stuff that&amp;nbsp;I am having having difficulty putting off until a later iteration&amp;nbsp;(instrumentation, security, etc.).&amp;nbsp; It's stuff that you know you'll have to end up doing eventually, but you don't want to waste time doing it on features that might be refactored or cut.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;It's an interesting approach, but definitely different than the waterfall approach I was schooled in and then later conditioned in whilst developing in an enterprise IT group.&amp;nbsp; Overall, I'd have to say that I am enjoying it, but I do laugh every time I think of the day that our little baby beta will be born into a critical&amp;nbsp;environment only to&amp;nbsp;highlight what Ma &amp;amp; Pa did and didn't do right.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=926848" width="1" height="1"&gt;</description></item><item><title>multi-line text input into t-sql in Sql Server 2005 (XmlDataType)</title><link>http://blogs.msdn.com/misterm/archive/2006/10/04/multi_2D00_line-text-input-into-t_2D00_sql-in-Sql-Server-2005-_2800_XmlDataType_2900_.aspx</link><pubDate>Thu, 05 Oct 2006 02:40:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:792367</guid><dc:creator>mr.m</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/misterm/comments/792367.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=792367</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=792367</wfw:comment><description>Recently in my current PIP (project-in-progress), I needed to take a collection of string values in the middle-tier and insert/update them as records in my database via a stored proc. In the past, I've used a delimited string and a split-like table function...(&lt;a href="http://blogs.msdn.com/misterm/archive/2006/10/04/multi_2D00_line-text-input-into-t_2D00_sql-in-Sql-Server-2005-_2800_XmlDataType_2900_.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=792367" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/misterm/archive/tags/XmlDataType/default.aspx">XmlDataType</category></item><item><title>What do you want out of your profile(s) here on MS spaces?</title><link>http://blogs.msdn.com/misterm/archive/2006/08/25/724444.aspx</link><pubDate>Fri, 25 Aug 2006 23:38:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:724444</guid><dc:creator>mr.m</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/misterm/comments/724444.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=724444</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=724444</wfw:comment><description>So, the hot topic of 'profile' came up today over lunch (as well as the various interpretations of the acronym 'phat').  Basically, for our community sites, which profiling solution should we use?  MSN, the underlying technology platform that is going to be replacing our blogs, chats, etc, or do we roll _another_ one?  For the project that I'm currently working on 'community reputation', the elements that we'll be caring about will be fairly closely tied with a user's 'profile'.  As the standard profile elements typically include things like 'username', 'publishedEmail' 'emailVisibility', etc. etc, I'm not too personally concerned with which 'profile' solution we use.  Rather, I think that we should write a mashup service on top of whichever profile services the folks in our communities are using (be it the tech spaces on MSDN or the personal kit over on MSN).  This would allow a user to lump all their personal pivot info from the various (at this time) points a person may be 'profiled', into one place. &lt;/runon&gt;  


I'm curious to know what the communities think about this - would you want to be able to sign in once at an MS property and be able to link/edit your disparate profile data in one location?  Thoughts very much appreciated.&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=724444" width="1" height="1"&gt;</description></item><item><title>fun w/Sql Server 2005 - Thesaurus files</title><link>http://blogs.msdn.com/misterm/archive/2006/08/23/715658.aspx</link><pubDate>Thu, 24 Aug 2006 03:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:715658</guid><dc:creator>mr.m</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/misterm/comments/715658.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=715658</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=715658</wfw:comment><description>So today I needed to find out how full-text searches work in SqlServer 05.  Luckily, I found a good deal of information out on MSDN (http://msdn2.microsoft.com/en-us/library/ms142571.aspx) that was particulary helpful.

One point of interest that came up for me was the thesaurus (http://msdn2.microsoft.com/en-us/library/ms142491.aspx).  For example, the ability for a configurable, per-language mechanism that allows synonym matching in search terms (search for "shoe" and you may want the user to see records that contain "loafer" or "boot").

The one thing I thought was a bit funky was that (from what I could tell in a one-day cursory study) there was no mgmt studio editor for this information (which is stored in xml files).  After a brief perusal about the web, I haven't found any add-on's either.

I'm thinking that some sort of interface would most likely be beneficial for the application owners (ie - be able to CRUD this type of information on the fly rather than go through a release cycle) so perhaps I'll run it past the PMs, if we implement this type of search.  It certainly wouldn't be that difficult a thing to put together.&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=715658" width="1" height="1"&gt;</description></item><item><title>Kudos to P&amp;P (Data Access Block)</title><link>http://blogs.msdn.com/misterm/archive/2006/08/15/701741.aspx</link><pubDate>Wed, 16 Aug 2006 02:23:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:701741</guid><dc:creator>mr.m</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/misterm/comments/701741.aspx</comments><wfw:commentRss>http://blogs.msdn.com/misterm/commentrss.aspx?PostID=701741</wfw:commentRss><wfw:comment>http://blogs.msdn.com/misterm/rsscomments.aspx?PostID=701741</wfw:comment><description>Just implemented the DAB today for the project I'm working on and was quite impressed at the simplicity of the process.  After all the fun with last years CTP for the Whidbey beta, I was expecting a bit more trouble, but it went really smoothly.

What I had in previously was just a small sqlClient-centric utility project that basically had a couple of helper methods (which looked _alot_ like the old block's signatures).  The thought to not use the blocks initially was in maintaining the 'only code what you need' agile mantra, though the project SDET and I agreed that consuming libraries didn't really count.

I also liked seeing the abstract factory pattern being used even though this project will most likely never see anything but SqlServer on the backend.

http://msdn.microsoft.com/practices/&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=701741" width="1" height="1"&gt;</description></item></channel></rss>