<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/1.5.1-alpha" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
>

<channel>
	<title>Live Chat Programs</title>
	<link>http://thelivechatsoftware.blogsome.com</link>
	<description>Just another WordPress weblog</description>
	<pubDate>Wed, 28 May 2008 07:16:19 +0000</pubDate>
	<generator>http://wordpress.org/?v=1.5.1-alpha</generator>
	<language>en</language>

		<item>
		<title>VPC 2007 Double Monitor support</title>
		<link>http://thelivechatsoftware.blogsome.com/2008/05/28/vpc-2007-double-monitor-support/</link>
		<comments>http://thelivechatsoftware.blogsome.com/2008/05/28/vpc-2007-double-monitor-support/#comments</comments>
		<pubDate>Wed, 28 May 2008 07:16:19 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Live Chat software</category>
		<guid>http://thelivechatsoftware.blogsome.com/2008/05/28/vpc-2007-double-monitor-support/</guid>
		<description><![CDATA[	I have been trying out to regain a way to give up you to consort Practical PC 2007 with multiple monitors. Natively VPC 2007 doesnt corroborate more than 1 monitor, however you can &#8220;trick&#8221; it by applying respective techniques that extend the desktop area into a bigger practical desktop. I rendered practicing the awful MaxiVista [...]]]></description>
			<content:encoded><![CDATA[	<p>I have been trying out to regain a way to give up you to consort Practical PC 2007 with multiple monitors. Natively VPC 2007 doesnt corroborate more than 1 monitor, however you can &#8220;trick&#8221; it by applying respective techniques that extend the desktop area into a bigger practical desktop. I rendered practicing the awful MaxiVista tool which can stretch your screen across disjoined PC&#8217;s (think &#8220;bear on&#8221; distant desktop), but the newfangled multi-monitor compatibility feature of VPC 2007 (which inexplicably does not tot multi-monitor support) reached this hard since it sees to it that your desktop retakes your mouse when you travel it outdoors of the VPC window so keeping the stretched screen from being approachable. Thusly, or else I proved the Removed Desktop approach mentioned in Steven Harman&#8217;s blog post. Hither is a ready rundown on how it acts: Connect 2 monitors to your PC (more than 2 typically don'&#8217;t work with this approach). Get certain to widen your desktop onto the 2nd screen via Display Properties -&gt; Settings. And then set in motion Distant Desktop (mstsc.exe) with the &#8220;/span&#8221; flag: <!-- Code foregrounding produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> mstsc / cross So simply utilise Distant Desktop as common by qualifying your VPC&#8217;s computer name in the connection dialog. When I for the first time examined this, it still didnt function just right. It saved passing me pestering scrollbars rather of plumping total screen, so I added together this surplus flag to storm it into fullscreen: <a id="more-329"></a><!-- Code playing up produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> mstsc / span / f Too, since I didnt desire VPC to have the supererogatory overhead of holding 2 sessions (the console and my newfangled RDP session), I chucked up the sponge one more flag to progress to it merely take-over the initial console window: <!-- Code foregrounding produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> mstsc / span / f / console NOTE : The /span flag is but present on the very up-to-the-minutest version of Distant Desktop Connection. Thence, you must either be campaigning Vista on both PC&#8217;s, or instal the update particularised hither: http://support.microsoft.com/kb/925876 There are limitations on how your monitors must be configured in order for this flag to exploit. Too, keep in mind that this technique only enlarges your desktop area sufficiently magnanimous enouch to traverse both monitors, but it DOES NOT act on the button like the aboriginal dual-monitor support you may be habituated to. For example, when you maximise a window, it maximizes across BOTH monitors or else of maximizing within the confines of a single monitor. For at present, I&#8217;m just now dealing with that by keeping off maximising and just now manually resizing windows to go 1 screen. Ripe Users: One way to deflect having to fix up windows each time is to expend a qabalistic, yet unbelievable tool bade Hawkeye ShellInit. ShellInit is a little application that aids you rig your desktop &amp; application windows via script. Hither is a pocket-size script that will act Ocular Studio over the right-hand screen (taking over 1280x1024 resolution) and dilate it to the right size. Position Window, * Microsoft Ocular Studio, wndclass_desked_gsk, 1280, 0, 1288, 1002 If you make up one&#8217;s mind to utilise this tool, cook certain and interpret the readme.txt file for some ripe sample scripts and ideas.</p>
	<p><i>Relating Posts:</i><br /><i><a href="http://cahtter.blogsome.com/2008/03/24/startup-shutdown-and-related-matters/"  title="Startup, Shutdown and related matters">Startup, Shutdown and related matters</a></i><br /><i><a href="http://cahtter.blogsome.com/2008/03/24/when-are-two-algorithms-the-same/"  title="When Are Two Algorithms the Same?">When Are Two Algorithms the Same?</a></i><br /><i><a href="http://cahtter.blogsome.com/2008/03/24/hosting/"  title="Hosting">Hosting</a></i><br /><i><a href="http://cahtter.blogsome.com/2008/03/23/youtube-tries-to-get-legal/"  title="YouTube Tries to Get Legal">YouTube Tries to Get Legal</a></i></p>
]]></content:encoded>
			<wfw:commentRss>http://thelivechatsoftware.blogsome.com/2008/05/28/vpc-2007-double-monitor-support/feed/</wfw:commentRss>
	</item>
		<item>
		<title>Fix ReturnUrl When Sharing Forms Authentication with Multiple Web Applications</title>
		<link>http://thelivechatsoftware.blogsome.com/2008/04/24/fix-returnurl-when-sharing-forms-authentication-with-multiple-web-applications-2/</link>
		<comments>http://thelivechatsoftware.blogsome.com/2008/04/24/fix-returnurl-when-sharing-forms-authentication-with-multiple-web-applications-2/#comments</comments>
		<pubDate>Thu, 24 Apr 2008 20:09:50 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Live Chat software</category>
		<guid>http://thelivechatsoftware.blogsome.com/2008/04/24/fix-returnurl-when-sharing-forms-authentication-with-multiple-web-applications-2/</guid>
		<description><![CDATA[	Also see: Brad Abrams&#8217; pixel8 Interview Podcast posted
	Scenario: You have two web applications www.mydomain.com and login.mydomain.com. The login site provides a centralized login application and www contains any number of web applications that should use the auth ticket issued by the login site. 
	The auth ticket can be setup to be shared across the two [...]]]></description>
			<content:encoded><![CDATA[	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/brad-abrams-pixel8-interview-podcast-posted/"  title="Brad Abrams' pixel8 Interview Podcast posted">Brad Abrams&#8217; pixel8 Interview Podcast posted</a></i></p>
	<p>Scenario: You have two web applications www.mydomain.com and login.mydomain.com. The login site provides a centralized login application and www contains any number of web applications that should use the auth ticket issued by the login site. </p>
	<p>The auth ticket can be setup to be shared across the two 3rd level domains no problem. The problem with this setup is that when the user requests a page on www and gets redirected to login the ReturnUrl query string parameter contains a relative path. As far as I know there are not any extensibility points on the FormsAuthenication or FormsAuthenticationModule classes that you can use to fix this.&nbsp;A quick and dirty fix is to use the EndRequest event in your global.asax like this:</p>
	<p>&nbsp;</p>
	<div class="csharpcode">
<pre><span class=\"lnum\"> 1: </span> <span class=\"kwrd\">protected</span> <span class=\"kwrd\">void</span> Application_EndRequest(<span class=\"kwrd\">object</span> sender, EventArgs e)</pre>
	<pre><span class=\"lnum\"> 2: </span> {</pre>
	<pre><span class=\"lnum\"> 3: </span> <span class=\"kwrd\">string</span> redirectUrl = <span class=\"kwrd\">this</span>.Response.RedirectLocation;</pre>
	<pre><span class=\"lnum\"> 4: </span> <span class=\"kwrd\">if</span> (!<span class=\"kwrd\">string</span>.IsNullOrEmpty(redirectUrl))</pre>
	<pre><span class=\"lnum\"> 5: </span> {</pre>
	<pre><span class=\"lnum\"> 6: </span> <span class=\"kwrd\">this</span>.Response.RedirectLocation = Regex.Replace(redirectUrl, <span class=\"str\">&#8220;ReturnUrl=(?&#8217;url&#8217;.*)&#8221;</span>, <span class=\"kwrd\">delegate</span>(Match m)</pre>
<a id="more-328"></a>
<pre><span class=\"lnum\"> 7: </span> {</pre>
	<pre><span class=\"lnum\"> 8: </span> <span class=\"kwrd\">string</span> url = HttpUtility.UrlDecode(m.Groups[<span class=\"str\">&#8220;url&#8221;</span>].Value);</pre>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/23/binding-to-net-frameworks-assemblies/"  title="Binding to .NET Frameworks Assemblies">Binding to .NET Frameworks Assemblies</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/determining-whether-a-file-is-an-assembly-2/"  title="Determining Whether a File Is an Assembly">Determining Whether a File Is an Assembly</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/from-c-to-java-part-3-2/"  title="From C# to Java:  Part 3">From C# to Java:  Part 3</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/tagspace-social-bookmarking-for-the-whole-webfrom-microsoft-2/"  title="Tagspace: Social Bookmarking for the Whole Web...from Microsoft">Tagspace: Social Bookmarking for the Whole Web&#8230;from Microsoft</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/25/natural-sorting-in-c/"  title="Natural Sorting in C#">Natural Sorting in C#</a></i></p>
	<pre><span class=\"lnum\"> 9: </span> Uri u = <span class=\"kwrd\">new</span> Uri(<span class=\"kwrd\">this</span>.Request.Url, url);</pre>
	<pre><span class=\"lnum\"> 10: </span> <span class=\"kwrd\">return</span> <span class=\"kwrd\">string</span>.Format(<span class=\"str\">&#8220;ReturnUrl={0}&#8221;</span>, HttpUtility.UrlEncode(u.ToString()));</pre>
	<pre><span class=\"lnum\"> 11: </span> }, RegexOptions.Singleline | RegexOptions.IgnoreCase | RegexOptions.ExplicitCapture);</pre>
	<pre><span class=\"lnum\"> 12: </span> }</pre>
	<pre><span class=\"lnum\"> 13: </span> }</pre>
</div>
	<p><style type="text/css">.csharpcode,.csharpcode pre<br />
{<br />
	font-size: small;<br />
	color: black;<br />
	font-family: consolas, &#8220;Courier New&#8221;, courier, monospace;<br />
	background-color: #ffffff;<br />
	/*white-space: pre;*/<br />
}<br />
.csharpcode pre { margin: 0em; }<br />
.csharpcode.rem { color: #008000; }<br />
.csharpcode.kwrd { color: #0000ff; }<br />
.csharpcode.str { color: #006080; }<br />
.csharpcode.op { color: #0000c0; }<br />
.csharpcode.preproc { color: #cc6633; }<br />
.csharpcode.asp { background-color: #ffff00; }<br />
.csharpcode.html { color: #800000; }<br />
.csharpcode.attr { color: #ff0000; }<br />
.csharpcode.alt<br />
{<br />
	background-color: #f4f4f4;<br />
	width: 100%;<br />
	margin: 0em;<br />
}<br />
.csharpcode.lnum { color: #606060; }<br />
</style></p>
	<p>The basic idea is to intercept the redirect and process the returnurl query string parameter with a regex. This could also be wrapped up in it&#8217;s own HttpModule. It&#8217;s kind of cheezy I know but it seems to work.</p>
<img src="http://weblogs.asp.net/aggbug.aspx?PostID=1562623" width="1" h<br />
<div class="interline"/><a href="http://www.jbTop.com/" title="Live Person">Live Person</a>: Live Chat Solution for Online Customer Service on Website.</p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/25/updated-finalization-and-hosting/"  title="Updated Finalization and Hosting">Updated Finalization and Hosting</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/23/eriskay-a-programming-language-based-on-game-semantics/"  title="Eriskay: a Programming Language Based on Game Semantics">Eriskay: a Programming Language Based on Game Semantics</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/from-c-to-java-part-3-2/"  title="From C# to Java:  Part 3">From C# to Java:  Part 3</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/23/eriskay-a-programming-language-based-on-game-semantics/"  title="Eriskay: a Programming Language Based on Game Semantics">Eriskay: a Programming Language Based on Game Semantics</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/passing-the-community-torch-in-search-of-a-new-chief-executive-in-redmond-2/"  title="Passing the Community Torch: In Search of a New Chief Executive in Redmond">Passing the Community Torch: In Search of a New Chief Executive in Redmond</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/exception-handling-in-running-a-business-2/"  title="Exception Handling in Running a Business">Exception Handling in Running a Business</a></i></p>
eight=&#8221;1&#8243;><br />
<span style="font-size:8pt; font-style:italic">http://weblogs.asp.net/dfindley/archive/2007/02/06/fix-returnurl-when-sharing-forms-authentication-with-multiple-web-applications.aspx</span></p>
]]></content:encoded>
			<wfw:commentRss>http://thelivechatsoftware.blogsome.com/2008/04/24/fix-returnurl-when-sharing-forms-authentication-with-multiple-web-applications-2/feed/</wfw:commentRss>
	</item>
		<item>
		<title>VS.NET Macro To Group and Sort Your Using Statements</title>
		<link>http://thelivechatsoftware.blogsome.com/2008/04/03/vsnet-macro-to-group-and-sort-your-using-statements-2/</link>
		<comments>http://thelivechatsoftware.blogsome.com/2008/04/03/vsnet-macro-to-group-and-sort-your-using-statements-2/#comments</comments>
		<pubDate>Thu, 03 Apr 2008 21:03:46 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Live Chat software</category>
		<guid>http://thelivechatsoftware.blogsome.com/2008/04/03/vsnet-macro-to-group-and-sort-your-using-statements-2/</guid>
		<description><![CDATA[	Also see: Determining Whether a File Is an Assembly
	I try to&nbsp;follow a coding standard for organizing my using statements. System.* goes at the top and then other namespaces grouped together like this:
	 using System;
 using System.Collections.Generic;
 using System.Configuration;
 using System.Data;
 using System.Data.SqlClient;
 using System.Web;
 using System.Web.Script.Services;
 using System.Web.Services;
 using System.Web.Services.Protocols;
	
 using Microsoft;
 using Microsoft.CSharp;
	
 using [...]]]></description>
			<content:encoded><![CDATA[	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/25/determining-whether-a-file-is-an-assembly-2/"  title="Determining Whether a File Is an Assembly">Determining Whether a File Is an Assembly</a></i></p>
	<p>I try to&nbsp;follow a coding standard for organizing my using statements. System.* goes at the top and then other namespaces grouped together like this:</p>
	<pre class="csharpcode"> <span class=\"kwrd\">using</span> System;
 <span class=\"kwrd\">using</span> System.Collections.Generic;
 <span class=\"kwrd\">using</span> System.Configuration;
 <span class=\"kwrd\">using</span> System.Data;
 <span class=\"kwrd\">using</span> System.Data.SqlClient;
 <span class=\"kwrd\">using</span> System.Web;
 <span class=\"kwrd\">using</span> System.Web.Script.Services;
 <span class=\"kwrd\">using</span> System.Web.Services;
 <span class=\"kwrd\">using</span> System.Web.Services.Protocols;
	
 <span class=\"kwrd\">using</span> Microsoft;
 <span class=\"kwrd\">using</span> Microsoft.CSharp;
	
 <span class=\"kwrd\">using</span> MyCompany;
 <span class=\"kwrd\">using</span> MyCompany.Web;</pre>
	<p><style type="text/css">.csharpcode,.csharpcode pre<br />
{<br />
	font-size: small;<br />
	color: black;<br />
	font-family: consolas, &#8220;Courier New&#8221;, courier, monospace;<br />
	background-color: #ffffff;<br />
	/*white-space: pre;*/<br />
}<br />
.csharpcode pre { margin: 0em; }<br />
.csharpcode.rem { color: #008000; }<br />
.csharpcode.kwrd { color: #0000ff; }<br />
.csharpcode.str { color: #006080; }<br />
.csharpcode.op { color: #0000c0; }<br />
.csharpcode.preproc { color: #cc6633; }<br />
.csharpcode.asp { background-color: #ffff00; }<br />
.csharpcode.html { color: #800000; }<br />
.csharpcode.attr { color: #ff0000; }<br />
.csharpcode.alt<br />
{<br />
	background-color: #f4f4f4;<br />
	width: 100%;<br />
	margin: 0em;<br />
}<br />
.csharpcode.lnum { color: #606060; }<br />
</style></p>
	<p><a id="more-327"></a>
<p><span class="kwrd"></span>I finally got tired enough of keeping this all sorted out that I made a VS.NET macro to do it for me. This macro will take the current selection, parse it for using statements, group and sort them like the above example.</p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/reflectiontypeloadexception/"  title="ReflectionTypeLoadException">ReflectionTypeLoadException</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/tagspace-social-bookmarking-for-the-whole-webfrom-microsoft-2/"  title="Tagspace: Social Bookmarking for the Whole Web...from Microsoft">Tagspace: Social Bookmarking for the Whole Web&#8230;from Microsoft</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/25/channel-9-interview-2/"  title="Channel 9 Interview">Channel 9 Interview</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/26/blogs-at-work/"  title="Blogs at work">Blogs at work</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/25/updated-finalization-and-hosting/"  title="Updated Finalization and Hosting">Updated Finalization and Hosting</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/24/applied-metamodelling-a-foundation-for-language-driven-development/"  title="Applied Metamodelling: A Foundation for Language Driven Development">Applied Metamodelling: A Foundation for Language Driven Development</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/24/applied-metamodelling-a-foundation-for-language-driven-development/"  title="Applied Metamodelling: A Foundation for Language Driven Development">Applied Metamodelling: A Foundation for Language Driven Development</a></i></p>
	<p>Here&#8217;s the macro code:</p>
	<pre class="csharpcode"> <span class=\"kwrd\">Dim</span> _usingPattern <span class=\"kwrd\">As</span> Regex = <span class=\"kwrd\">New</span> Regex( _
 <span class=\"str\">&#8220;\s*(?&lt;using&gt;using\s*(?&lt;group&gt;\w+)[^;]*);&#8221;</span>, _
 RegexOptions.IgnoreCase _
 <span class=\"kwrd\">Or</span> RegexOptions.Multiline _
 <span class=\"kwrd\">Or</span> RegexOptions.ExplicitCapture _
 <span class=\"kwrd\">Or</span> RegexOptions.CultureInvariant _
 <span class=\"kwrd\">Or</span> RegexOptions.Compiled _
 )
	
 <span class=\"kwrd\">Public</span> <span class=\"kwrd\">Sub</span> SortUsing()
 <span class=\"kwrd\">If</span> <span class=\"kwrd\">Not</span> DTE.ActiveDocument <span class=\"kwrd\">Is</span> <span class=\"kwrd\">Nothing</span> <span class=\"kwrd\">Then</span>
 <span class=\"kwrd\">Dim</span> sel <span class=\"kwrd\">As</span> TextSelection = DTE.ActiveDocument.Selection
	
 <span class=\"kwrd\">If</span> sel.Text.Contains(vbCrLf) <span class=\"kwrd\">Then</span>
 <span class=\"kwrd\">If</span> sel.ActivePoint <span class=\"kwrd\">Is</span> sel.BottomPoint <span class=\"kwrd\">Then</span> sel.SwapAnchor()
 sel.StartOfLine(vsStartOfLineOptions.vsStartOfLineOptionsFirstColumn, <span class=\"kwrd\">True</span>)
 sel.SwapAnchor()
 sel.EndOfLine(<span class=\"kwrd\">True</span>)
	
 <span class=\"kwrd\">Dim</span> groups <span class=\"kwrd\">As</span> <span class=\"kwrd\">New</span> SortedList(Of <span class=\"kwrd\">String</span>, List(Of <span class=\"kwrd\">String</span>))()
 <span class=\"kwrd\">For</span> <span class=\"kwrd\">Each</span> match <span class=\"kwrd\">As</span> Match <span class=\"kwrd\">In</span> _usingPattern.Matches(sel.Text)
 <span class=\"kwrd\">Dim</span> u <span class=\"kwrd\">As</span> <span class=\"kwrd\">String</span> = match.Groups(<span class=\"str\">&#8220;using&#8221;</span>).Value
 <span class=\"kwrd\">Dim</span> g <span class=\"kwrd\">As</span> <span class=\"kwrd\">String</span> = match.Groups(<span class=\"str\">&#8220;group&#8221;</span>).Value
	
 <span class=\"rem\">&#8216; System usings sort at the top</span>
 <span class=\"kwrd\">If</span> g = <span class=\"str\">&#8220;System&#8221;</span> <span class=\"kwrd\">Then</span> g = <span class=\"str\">&#8220;_&#8221;</span> + g
	
 <span class=\"kwrd\">Dim</span> list <span class=\"kwrd\">As</span> List(Of <span class=\"kwrd\">String</span>)
 <span class=\"kwrd\">If</span> <span class=\"kwrd\">Not</span> groups.TryGetValue(g, list) <span class=\"kwrd\">Then</span>
 list = <span class=\"kwrd\">New</span> List(Of <span class=\"kwrd\">String</span>)()
 groups.Add(g, list)
 <span class=\"kwrd\">End</span> <span class=\"kwrd\">If</span>
 list.Add(u)
 <span class=\"kwrd\">Next</span>
	
 <span class=\"kwrd\">Dim</span> builder <span class=\"kwrd\">As</span> <span class=\"kwrd\">New</span> StringBuilder()
 <span class=\"kwrd\">For</span> <span class=\"kwrd\">Each</span> group <span class=\"kwrd\">As</span> KeyValuePair(Of <span class=\"kwrd\">String</span>, List(Of <span class=\"kwrd\">String</span>)) <span class=\"kwrd\">In</span> groups
 <span class=\"kwrd\">If</span> builder.Length &gt; 0 <span class=\"kwrd\">Then</span> builder.AppendLine()
 group.Value.Sort()
 <span class=\"kwrd\">For</span> <span class=\"kwrd\">Each</span> line <span class=\"kwrd\">As</span> <span class=\"kwrd\">String</span> <span class=\"kwrd\">In</span> group.Value
 builder.Append(line)
 builder.AppendLine(<span class=\"str\">&#8220;;&#8221;</span>)
 <span class=\"kwrd\">Next</span>
 <span class=\"kwrd\">Next</span>
	
 sel.DeleteLeft()
 sel.Insert(builder.ToString())
 <span class=\"kwrd\">End</span> <span class=\"kwrd\">If</span>
 <span class=\"kwrd\">End</span> <span class=\"kwrd\">If</span>
 <span class=\"kwrd\">End</span> <span class=\"kwrd\">Sub</span>
</pre>
	<p><style type="text/css">.csharpcode,.csharpcode pre<br />
{<br />
	font-size: small;<br />
	color: black;<br />
	font-family: consolas, &#8220;Courier New&#8221;, courier, monospace;<br />
	background-color: #ffffff;<br />
	/*white-space: pre;*/<br />
}<br />
.csharpcode pre { margin: 0em; }<br />
.csharpcode.rem { color: #008000; }<br />
.csharpcode.kwrd { color: #0000ff; }<br />
.csharpcode.str { color: #006080; }<br />
.csharpcode.op { color: #0000c0; }<br />
.csharpcode.preproc { color: #cc6633; }<br />
.csharpcode.asp { background-color: #ffff00; }<br />
.csharpcode.html { color: #800000; }<br />
.csharpcode.attr { color: #ff0000; }<br />
.csharpcode.alt<br />
{<br />
	background-color: #f4f4f4;<br />
	width: 100%;<br />
	margin: 0em;<br />
}<br />
.csharpcode.lnum { color: #606060; }<br />
</style><br />
<div class="interline"><a href="http://www.jbTop.com/" title="Live Person">Live Person</a>: Live Chat Solution for Online Customer Service on Website.
</div>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/26/a-web-site-is-not-an-rss-feednor-the-reverse/"  title="A web site is not an RSS feed...nor the reverse.">A web site is not an RSS feed&#8230;nor the reverse.</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/26/my-presidential-endorsement-2/"  title="My Presidential Endorsement:">My Presidential Endorsement:</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/24/java-perfomance-talk/"  title="Java perfomance talk">Java perfomance talk</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/25/finalization/"  title="Finalization">Finalization</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/bragging-on-hdnet-2/"  title="Bragging on HDNet">Bragging on HDNet</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/26/eriskay-a-programming-language-based-on-game-semantics/"  title="Eriskay: a Programming Language Based on Game Semantics">Eriskay: a Programming Language Based on Game Semantics</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/22/sigplan-workshop-on-undergraduate-programming-language-curriculum/"  title="SIGPLAN Workshop on Undergraduate Programming Language Curriculum">SIGPLAN Workshop on Undergraduate Programming Language Curriculum</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/25/from-c-to-java-part-5/"  title="From C# to Java:  Part 5">From C# to Java:  Part 5</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/parallels-adds-express-windows-installation-2/"  title="Parallels adds "Express Windows Installation"">Parallels adds &#8220;Express Windows Installation&#8221;</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/26/my-presidential-endorsement-2/"  title="My Presidential Endorsement:">My Presidential Endorsement:</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/26/determining-the-referencing-assembly/"  title="Determining the Referencing Assembly">Determining the Referencing Assembly</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/26/vsnet-macro-to-group-and-sort-your-using-statements/"  title="VS.NET Macro To Group and Sort Your Using Statements">VS.NET Macro To Group and Sort Your Using Statements</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/passing-the-community-torch-in-search-of-a-new-chief-executive-in-redmond-2/"  title="Passing the Community Torch: In Search of a New Chief Executive in Redmond">Passing the Community Torch: In Search of a New Chief Executive in Redmond</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/brad-abrams-pixel8-interview-podcast-posted/"  title="Brad Abrams' pixel8 Interview Podcast posted">Brad Abrams&#8217; pixel8 Interview Podcast posted</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/memory-model-2/"  title="Memory Model">Memory Model</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/26/foundations-for-structured-programming-with-gadts/"  title="Foundations for Structured Programming with GADTs">Foundations for Structured Programming with GADTs</a></i></p>
<img src="http://weblogs.asp.net/aggbug.aspx?PostID=1579576" width="1" height="1"/><br />
<span style="font-size:8pt; font-style:italic">http://weblogs.asp.net/dfindley/archive/2007/02/07/vs-net-macro-to-group-and-sort-your-using-statements.aspx</span></p>
]]></content:encoded>
			<wfw:commentRss>http://thelivechatsoftware.blogsome.com/2008/04/03/vsnet-macro-to-group-and-sort-your-using-statements-2/feed/</wfw:commentRss>
	</item>
		<item>
		<title>Blogs at work</title>
		<link>http://thelivechatsoftware.blogsome.com/2008/03/26/blogs-at-work/</link>
		<comments>http://thelivechatsoftware.blogsome.com/2008/03/26/blogs-at-work/#comments</comments>
		<pubDate>Wed, 26 Mar 2008 23:00:17 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Live Chat software</category>
		<guid>http://thelivechatsoftware.blogsome.com/2008/03/26/blogs-at-work/</guid>
		<description><![CDATA[	Also see: When Will Foreign Ownership of US Sports Teams Start ?
InfoWorld sees blogs in the enterprise [from Dave Winer ]. Amar (coworker) brought this up to me (the idea of using&nbsp;a blog for internal communication) and it seemed really interesting. It would be a great way for people to see what execs are up [...]]]></description>
			<content:encoded><![CDATA[	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/25/when-will-foreign-ownership-of-us-sports-teams-start-2/"  title="When Will Foreign Ownership of US Sports Teams Start ?">When Will Foreign Ownership of US Sports Teams Start ?</a></i></p>
InfoWorld sees blogs in the enterprise [from Dave Winer ]. Amar (coworker) brought this up to me (the idea of using&nbsp;a blog for internal communication) and it seemed really interesting. It would be a great way for people to see what execs are up to and thinking about&#8230;<br />
<span style="font-size:8pt; font-style:italic">http://www.simplegeek.com/permalink.aspx/79</span></p>
]]></content:encoded>
			<wfw:commentRss>http://thelivechatsoftware.blogsome.com/2008/03/26/blogs-at-work/feed/</wfw:commentRss>
	</item>
		<item>
		<title>Doing the Deal and Dishing the Dirt</title>
		<link>http://thelivechatsoftware.blogsome.com/2008/03/26/doing-the-deal-and-dishing-the-dirt-2/</link>
		<comments>http://thelivechatsoftware.blogsome.com/2008/03/26/doing-the-deal-and-dishing-the-dirt-2/#comments</comments>
		<pubDate>Wed, 26 Mar 2008 18:48:08 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Live Chat software</category>
		<guid>http://thelivechatsoftware.blogsome.com/2008/03/26/doing-the-deal-and-dishing-the-dirt-2/</guid>
		<description><![CDATA[	Also see: Parallels adds &#8220;Express Windows Installation&#8221;
I can say without question that this was the most amazing, annoying and difficult deal we have ever done since I bought the Mavs. 
	The annoyance. One agent who made a truism of the saying that &#8220;no good deed goes unpunished&#8221;. That said, I have nothing but respect and [...]]]></description>
			<content:encoded><![CDATA[	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/parallels-adds-express-windows-installation-2/"  title="Parallels adds "Express Windows Installation"">Parallels adds &#8220;Express Windows Installation&#8221;</a></i></p>
I can say without question that this was the most amazing, annoying and difficult deal we have ever done since I bought the Mavs. </p>
	<p><strong>The annoyance</strong>. One agent who made a truism of the saying that &#8220;no good deed goes unpunished&#8221;. That said, I have nothing but respect and admiration for Devean George. He told me that he would trust his agent as he had done for the last 10 years and take whatever may with that decision. He had the balls to stick to it. Even with people yelling and screaming at him. That said, as I write this, I really have no clue why the agent made the decision he did.</p>
	<p><strong>The dirt</strong>. Peter Vescey&#8217;s ridiculous assertion that Avery asked me to trade Dirk. Even in the Nellie years where we discussed trading every other player on the roster, Dirk was never mentioned. There has never been a discussion of trading Dirk during my tenure, EVER. Vescey&#8217;s source is an out and out liar.</p>
	<p>The thing about dealing with the media in this business is that they thrive on rumors and get bored with reality.</p>
	<p>For example. Several local media outlets had no interest in sending anyone to New Orleans to cover the All Star game or Dirk&#8217;s appearance there. That changed once the trade rumors started. Then all of the sudden, every media person they could find was there. Newscasts led with the rumors. Newspapers speculated and comments on the impact of the rumors if true or not true. There was reporting on rumors about rumors. All of which is fine. I get that and in many m<a id="more-325"></a>any ways, its good for the Mavs and the NBA. It drives interest.</p>
	<p><strong> My j<br />
<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/data-types-a-la-carte-2/"  title="Data Types a la Carte">Data Types a la Carte</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/determining-whether-a-file-is-an-assembly-2/"  title="Determining Whether a File Is an Assembly">Determining Whether a File Is an Assembly</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/data-types-a-la-carte-2/"  title="Data Types a la Carte">Data Types a la Carte</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/23/eriskay-a-programming-language-based-on-game-semantics/"  title="Eriskay: a Programming Language Based on Game Semantics">Eriskay: a Programming Language Based on Game Semantics</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/hosting/"  title="Hosting">Hosting</a></i></p>
ob</strong>, Donnie and Avery&#8217;s jobs include trying to protect the team from those rumors. The fact of the matter is, we are going to &#8220;love our team&#8221; no matter what. Every team can be made better with the right deal. We are always going to be opportunistic and try to improve, but we are not going to add any fodder to the rumor mill. Until this deal, we were always able to keep things quiet. To their credit, the NY media takes things to another level, or low, depending on your point of view. </p>
	<p><strong>The difficult</strong>. Saying goodbye to Devin, Gana and Trenton. All 3 are great guys in every way. On and off the court. It was far from an easy deal to make. We know that all 3 will continue to grow and get better and like other players we have traded or lost, come back to haunt us in some manner. That comes with every and any trade of players who are talented and work hard at their profession. I also think this will be a great chance for Mo Ager to start fresh. </p>
	<p><strong>The amazing</strong>. We think that Jason Kidd will immediately make the other players around him better. He is a different kind of point than Devin is. There are certain things that Devin does that JKidd can&#8217;t. No question about it. That said, through experience and talent, we think JKidd can make the game easier for JET, Dirk , Josh, Damp, Stack and all of our guys and as a result make our team better.<br /><strong><br />The business side</strong>. I think we were stagnating some. I thi<br />
<div class="interline"><a href="http://www.j-livesupport.com/affiliate/pages/117.php" title="Live Support Server">Live Support Server</a>: Jerry Messenger is Jabber/XMPP based Live Support Solution for your websites.
</div>
nk the spark and excitement that JKidd will bring is more than just what his talent offers. There is a reason why Kobe and Lebron were lobbying management to bring JKidd in. We think he will recharge the batteries of not just our players, but the organization, fans, media and even merchandise and advertising sales. </p>
	<p><strong>That&#8217;s the reality of this business. Wins and losses are not just about talent, its about energy and teamwork</strong>. <strong>The best leaders recognize when a spark is needed and are honest enough to admit it, and get it</strong>. Even when things are going well, its sometimes hard to sustain the energy of being a start up or of levels year past. In business it might be an acquisition, or a sale that may not be the perfect transaction, but its the most impactful. We have been discussing this now for at least a month. We think this deal will have impact.</p>
	<p>I&#8217;ve said before this was the best NBA season ever. It just got a little better.</p>
	<h6 style="clear: both; padding: 8px 0 0 0; height: 2px; font-size: 1px; border: 0; margin: 0; padding: 0;"></h6>
Permalink &#160;|&#160;Email this &#160;|&#160;Linking&#160;Blogs &#160;|&#160;Comments </p>
	<p><span style="font-size:8pt; font-style:italic">http://www.blogmaverick.com/2008/02/19/doing-the-deal-and-dishing-the-dirt/</span></p>
]]></content:encoded>
			<wfw:commentRss>http://thelivechatsoftware.blogsome.com/2008/03/26/doing-the-deal-and-dishing-the-dirt-2/feed/</wfw:commentRss>
	</item>
		<item>
		<title>Pure, Declarative, and Constructive Arithmetic Relations</title>
		<link>http://thelivechatsoftware.blogsome.com/2008/03/26/pure-declarative-and-constructive-arithmetic-relations-2/</link>
		<comments>http://thelivechatsoftware.blogsome.com/2008/03/26/pure-declarative-and-constructive-arithmetic-relations-2/#comments</comments>
		<pubDate>Wed, 26 Mar 2008 15:00:18 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Live Chat software</category>
		<guid>http://thelivechatsoftware.blogsome.com/2008/03/26/pure-declarative-and-constructive-arithmetic-relations-2/</guid>
		<description><![CDATA[	Pure, Declarative, and Constructive Arithmetic Relations. Oleg Kiselyov, William E. Byrd, Daniel P. Friedman, and Chung-chieh Shan. FLOPS 2008. (source code) 
	
We present decidable logic programs for addition, multiplication, division with remainder, exponentiation, and logarithm with remainder over the unbounded domain of natural numbers. Our predicates represent relations without mode restrictions or annotations. They are [...]]]></description>
			<content:encoded><![CDATA[	<p><small>Pure, Declarative, and Constructive Arithmetic Relations. Oleg Kiselyov, William E. Byrd, Daniel P. Friedman, and Chung-chieh Shan. FLOPS 2008. (source code) </small><br />
	<blockquote><p>
We present decidable logic programs for addition, multiplication, division with remainder, exponentiation, and logarithm with remainder over the unbounded domain of natural numbers. Our predicates represent relations without mode restrictions or annotations. They are fully decidable under the common, DFS-like, SLD resolution strategy<br />
of Prolog or under an interleaving refinement of DFS&#8230;
<p>
[The] attempts to define decidable multiplication even for the seemingly trivial unary case show the difficulties that become more pronounced as we move to binary arithmetic. We rely on a finite representation of infinite domains, precise instantiatedness analysis, and reasoning about SLD using search trees.
</p>
</blockquote></p>
	<p>
So you&#8217;ve read The Reasoned Schemer and were excited about the fact that unlike the built-in operations in Prolog, arithmetic relations (over binary numbers) were fully implemented. For example, addition could also be used for subtraction and multiplication for factoring numbers and for generating all triples of numbers related by multiplication. Now comes this paper to explain the motivation behind some of the more arcane definitions needed to implement arithmetic in a fully relational style, and to prove their properties formally. The paper develops unary and binary arithmetic relations in pure Prolog (with no cuts, negation or introspection).<a id="more-324"></a><br />
<div class="interline"><a href="http://www.j-livesupport.com/affiliate/pages/117.php" title="Live Person Software">Live Person Software</a>: Turn website visitors into your customers.
</div></p>
	<p>
LtU readers will also be interested in yet another embedding of pure Prolog into Haskell , that the authors offer. It is not meant to be the most optimal or convenient Prolog implementation (it wasn&#8217;t even intended to be an implementation of a logic</p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/devweek-2008-cross-platform-silverlight-demos/"  title="DevWeek 2008 Cross Platform Silverlight Demos">DevWeek 2008 Cross Platform Silverlight Demos</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/23/silverlight-2-beta-1-cross-domain-bug/"  title="Silverlight 2 Beta 1 Cross Domain Bug">Silverlight 2 Beta 1 Cross Domain Bug</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/24/stand-alone-fxcop-download/"  title="Stand alone FXCop download">Stand alone FXCop download</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/25/natural-sorting-in-c/"  title="Natural Sorting in C#">Natural Sorting in C#</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/determining-whether-a-file-is-an-assembly-2/"  title="Determining Whether a File Is an Assembly">Determining Whether a File Is an Assembly</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/what-are-you-destined-to-be-2/"  title="What Are You Destined to Be ?">What Are You Destined to Be ?</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/reliability-2/"  title="Reliability">Reliability</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/24/stand-alone-fxcop-download/"  title="Stand alone FXCop download">Stand alone FXCop download</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/memory-model-2/"  title="Memory Model">Memory Model</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/24/stand-alone-fxcop-download/"  title="Stand alone FXCop download">Stand alone FXCop download</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/on-the-perils-of-wikipedia-2/"  title="On the Perils of Wikipedia">On the Perils of Wikipedia</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/bragging-on-hdnet-2/"  title="Bragging on HDNet">Bragging on HDNet</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/important-changes-to-the-base-element-for-ie-7/"  title="Important changes to the BASE element for IE 7">Important changes to the BASE element for IE 7</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/devweek-2008-cross-platform-silverlight-demos/"  title="DevWeek 2008 Cross Platform Silverlight Demos">DevWeek 2008 Cross Platform Silverlight Demos</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/silverlight-2-developer-poster/"  title="Silverlight 2 Developer Poster">Silverlight 2 Developer Poster</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/when-are-two-algorithms-the-same/"  title="When Are Two Algorithms the Same?">When Are Two Algorithms the Same?</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/memory-model-2/"  title="Memory Model">Memory Model</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/why-i-hate-radio-2/"  title="Why I hate Radio">Why I hate Radio</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/brad-abrams-pixel8-interview-podcast-posted/"  title="Brad Abrams' pixel8 Interview Podcast posted">Brad Abrams&#8217; pixel8 Interview Podcast posted</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/24/a-quick-update-on-me-2/"  title="A quick update on me.">A quick update on me.</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/what-are-you-destined-to-be-2/"  title="What Are You Destined to Be ?">What Are You Destined to Be ?</a></i></p>
	<p>system). It was explicitly designed to be easier to reason about and so help prove certain properties of SLD or similar evaluation strategies. The main difference of DefinitionTree from other embeddings of Prolog in Haskell has to do with the generation of fresh names for logic variables. In DefinitionTree, name generation is <strong>not</strong> an effect, and the naming is fully decoupled from the evaluation. The evaluation no longer needs to carry a state for the generation of fresh names, hence the evaluator is easier to reason<br />
about equationally.<br />
<span style="font-size:8pt; font-style:italic">http://lambda-the-ultimate.org/node/2697</span></p>
]]></content:encoded>
			<wfw:commentRss>http://thelivechatsoftware.blogsome.com/2008/03/26/pure-declarative-and-constructive-arithmetic-relations-2/feed/</wfw:commentRss>
	</item>
		<item>
		<title>My Presidential Endorsement:</title>
		<link>http://thelivechatsoftware.blogsome.com/2008/03/26/my-presidential-endorsement-2/</link>
		<comments>http://thelivechatsoftware.blogsome.com/2008/03/26/my-presidential-endorsement-2/#comments</comments>
		<pubDate>Wed, 26 Mar 2008 10:00:25 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Live Chat software</category>
		<guid>http://thelivechatsoftware.blogsome.com/2008/03/26/my-presidential-endorsement-2/</guid>
		<description><![CDATA[	Also see: Updated Finalization and Hosting
They say that the definition of insanity is doing the same thing over and over and expecting different results. So why is it the American people allow our politicians to do the same things over and over and we believe them and expect results different from previous elections ?
	I&#8217;ve looked [...]]]></description>
			<content:encoded><![CDATA[	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/25/updated-finalization-and-hosting/"  title="Updated Finalization and Hosting">Updated Finalization and Hosting</a></i></p>
They say that the definition of insanity is doing the same thing over and over and expecting different results. So why is it the American people allow our politicians to do the same things over and over and we believe them and expect results different from previous elections ?</p>
	<p>I&#8217;ve looked at the websites of current and previous candidates to get an understanding of their platforms. They all have positions, some of which I agree with , some of which I don&#8217;t. But there is one thing that is missing from each and everyone of them, any manner of implementation. Health care, spending cuts, retaining or repealing tax cuts, keeping or removing troops, the soundbites with pretty numbers never end. Not a single candidate provides details on how exactly they are going to accomplish anything. Don&#8217;t they realize that economists exists to make lottery ticket buyers look smart, not presidential candidates ?</p>
	<p>It reminds me of business plans I get from kids who tell me about their vision and project all kinds of numbers leading to grand results. They can site historical facts and figures, but when it comes time to get into details of exactly how they are going to execute on their plans, the response is basically that they will figure it out as they go. I wouldn&#8217;t invest in a business that is winging it any more than I want to vote for a presidential candidate that is winging it. </p>
	<p>Unfortunately , they are all winging it. i have no question that they have every detail about how to spend their campaign contributi<a id="more-323"></a>ons on advertising planned out. I have yet to see details on how they plan to accomplish<br />
<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/important-changes-to-the-base-element-for-ie-7/"  title="Important changes to the BASE element for IE 7">Important changes to the BASE element for IE 7</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/24/bloggers-in-the-mavs-locker-room-2/"  title="Bloggers in the Mavs Locker Room ?">Bloggers in the Mavs Locker Room ?</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/brad-abrams-pixel8-interview-podcast-posted/"  title="Brad Abrams' pixel8 Interview Podcast posted">Brad Abrams&#8217; pixel8 Interview Podcast posted</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/25/loadassemblyname-2/"  title="Load(AssemblyName)">Load(AssemblyName)</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/22/sigplan-workshop-on-undergraduate-programming-language-curriculum/"  title="SIGPLAN Workshop on Undergraduate Programming Language Curriculum">SIGPLAN Workshop on Undergraduate Programming Language Curriculum</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/24/java-perfomance-talk/"  title="Java perfomance talk">Java perfomance talk</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/reliability-2/"  title="Reliability">Reliability</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/25/java-concurrency-another-series-on-its-issues/"  title="Java Concurrency, another series on its issues">Java Concurrency, another series on its issues</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/25/should-membership-stores-be-permitted-in-redmonds-manufacturing-park-zone-2/"  title="Should "Membership Stores" Be Permitted in Redmond's Manufacturing Park Zone?">Should &#8220;Membership Stores&#8221; Be Permitted in Redmond&#8217;s Manufacturing Park Zone?</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/appconfig-examples-2/"  title="App.config Examples">App.config Examples</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/23/life-calculus/"  title="Life Calculus">Life Calculus</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/26/why-yahoo-should-say-yes-to-microsoft-2/"  title="Why Yahoo should say Yes to MicroSoft">Why Yahoo should say Yes to MicroSoft</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/turning-bitboards-from-potential-moves-into-legal-moves-pawn-moves-and-conditional-rules/"  title="Turning bitboards from potential moves into legal moves, pawn moves, and conditional rules.">Turning bitboards from potential moves into legal moves, pawn moves, and conditional rules.</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/25/big-in-japan/"  title="Big in Japan">Big in Japan</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/23/linq-the-uber-findcontrol-2/"  title="LINQ - The Uber FindControl">LINQ - The Uber FindControl</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/appconfig-examples-2/"  title="App.config Examples">App.config Examples</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/24/claimspace-a-long-tail-recognition-system-2/"  title="Claimspace, a Long Tail Recognition System">Claimspace, a Long Tail Recognition System</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/23/eriskay-a-programming-language-based-on-game-semantics/"  title="Eriskay: a Programming Language Based on Game Semantics">Eriskay: a Programming Language Based on Game Semantics</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/when-are-two-algorithms-the-same/"  title="When Are Two Algorithms the Same?">When Are Two Algorithms the Same?</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/26/determining-the-referencing-assembly/"  title="Determining the Referencing Assembly">Determining the Referencing Assembly</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/24/stand-alone-fxcop-download/"  title="Stand alone FXCop download">Stand alone FXCop download</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/23/linq-the-uber-findcontrol-2/"  title="LINQ - The Uber FindControl">LINQ - The Uber FindControl</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/ive-finally-settled-into-my-new-position-on-the-internet-explorer-team-2/"  title="I've finally settled into my new position on the Internet Explorer team...">I&#8217;ve finally settled into my new position on the Internet Explorer team&#8230;</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/25/a-quick-fix-for-the-validator-setfocusonerror-bug-2/"  title="A Quick Fix for the Validator SetFocusOnError Bug">A Quick Fix for the Validator SetFocusOnError Bug</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/25/finalization/"  title="Finalization">Finalization</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/25/silverlight-2-developer-poster/"  title="Silverlight 2 Developer Poster">Silverlight 2 Developer Poster</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/23/youtube-tries-to-get-legal/"  title="YouTube Tries to Get Legal">YouTube Tries to Get Legal</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/23/win-friends-and-influence-your-team/"  title="Win friends and influence your team">Win friends and influence your team</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/23/win-friends-and-influence-your-team/"  title="Win friends and influence your team">Win friends and influence your team</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/data-types-a-la-carte-2/"  title="Data Types a la Carte">Data Types a la Carte</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/23/a-web-site-is-not-an-rss-feednor-the-reverse/"  title="A web site is not an RSS feed...nor the reverse.">A web site is not an RSS feed&#8230;nor the reverse.</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma2000.rticlz.com/2008/03/23/simplifying-web-service-development-with-jsr-181/"  title="Simplifying Web Service development with JSR-181">Simplifying Web Service development with JSR-181</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/determining-whether-a-file-is-an-assembly-2/"  title="Determining Whether a File Is an Assembly">Determining Whether a File Is an Assembly</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/25/we-live-in-an-open-book-world-the-lie-of-information-overload-2/"  title="We Live in an "Open Book" World, the Lie of Information Overload">We Live in an &#8220;Open Book&#8221; World, the Lie of Information Overload</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/bragging-on-hdnet-2/"  title="Bragging on HDNet">Bragging on HDNet</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/26/why-i-hate-radio-2/"  title="Why I hate Radio">Why I hate Radio</a></i></p>
all their great promises they are making to voters. That scares me.</p>
	<p>It also scares me that despite claims of not being an &#8220;insider&#8221; or wanting a different vision for America, every remaining candidate spends more energy campaigning to their party than to the issues. I got sick watching Clinton and Barack argue about who was less of a &#8220;Reaganite&#8221; during one of their few lively debate exchanges.</p>
	<p>I actually started to get a little bit excited about McCain. Then he went on the warpath to &#8220;mend his riff&#8221; with the Republican Party. I can only speak for myself, but the fact that he had a &#8220;riff&#8221; with the Republicans is exactly why i started to get excited about him. No, he hadn&#8217;t presented any more details on his plans than any other candidate, but there was a glimmer of hope that he was a candidate that thought for himself.</p>
	<p>(And before all the comments start, Ron Paul is the worse of all the candidates when it comes to detailing how he would execute on his promises. Just saying you are going to cut and eliminate everything doesn&#8217;t mean you know how to do it and/or could get it done.)</p>
	<p>So here we are, our country has the same problem we have every four years, our remaining candidates are politicians. They know how to spend other people&#8217;s money. They know how to assign responsibility to someone else. They know how to beg for other people&#8217;s money. They know how to campaign, schmooze and kiss babies. They have no earthly idea how to accomplish<br />
<div class="interline"><a href="http://www.j-livesupport.com/affiliate/pages/117.php" title="Live Help Server">Live Help Server</a>: Jerry Messenger is Jabber/XMPP Live Chat Server for a website.
</div>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/23/data-types-a-la-carte/"  title="Data Types a la Carte">Data Types a la Carte</a></i></p>
any of their promises.</p>
	<p>So here is my hope. My hope is that the entire primary process is just the preseason. That its nothing more than an expensive introduction to the Republican and Democratic candidates and once they have picked their winner, a wealthy individual will nominate them self to compete with the 2 parties and run for President.</p>
	<p><strong>Are you listening Mayor Bloomberg ? For less than the cost of opening a tent pole movie, you can change the status quo </strong>. I&#8217;m not saying that I&#8217;m going to vote for you yet. As I said above, the devil is in the details. But, I&#8217;m betting that unlike the current choices, you recognize the difference between politics and results.</p>
	<h6 style="clear: both; padding: 8px 0 0 0; height: 2px; font-size: 1px; border: 0; margin: 0; padding: 0;"></h6>
Permalink &#160;|&#160;Email this &#160;|&#160;Linking&#160;Blogs &#160;|&#160;Comments </p>
	<p><span style="font-size:8pt; font-style:italic">http://www.blogmaverick.com/2008/02/08/my-presidential-endorsement/</span></p>
]]></content:encoded>
			<wfw:commentRss>http://thelivechatsoftware.blogsome.com/2008/03/26/my-presidential-endorsement-2/feed/</wfw:commentRss>
	</item>
		<item>
		<title>Important changes to the BASE element for IE 7</title>
		<link>http://thelivechatsoftware.blogsome.com/2008/03/26/important-changes-to-the-base-element-for-ie-7-2/</link>
		<comments>http://thelivechatsoftware.blogsome.com/2008/03/26/important-changes-to-the-base-element-for-ie-7-2/#comments</comments>
		<pubDate>Wed, 26 Mar 2008 09:00:27 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Live Chat software</category>
		<guid>http://thelivechatsoftware.blogsome.com/2008/03/26/important-changes-to-the-base-element-for-ie-7-2/</guid>
		<description><![CDATA[	Also see: Presentations&#8230;
	Also see: JSR-203 more New I/O APIs - NIO.2
	Also see: From C# to Java:  Part 4
	Looks like my post went live over on the IETB regarding changes we made to the BASE element in IE 7. Previously the BASE element had some issues, primarily by design, that made certain actions within the [...]]]></description>
			<content:encoded><![CDATA[	<p style="line-height: 150%"><i>Also see: <a href="http://kerrysoft16.edublogs.org/2008/03/23/presentations/"  title="Presentations...">Presentations&#8230;</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/24/jsr-203-more-new-io-apis-nio2/"  title="JSR-203 more New I/O APIs - NIO.2">JSR-203 more New I/O APIs - NIO.2</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://annil12.blogsome.com/2008/03/24/from-c-to-java-part-4-2/"  title="From C# to Java:  Part 4">From C# to Java:  Part 4</a></i></p>
	<p>Looks like my post went live over on the IETB regarding changes we made to the BASE element in IE 7. Previously the BASE element had some issues, primarily by design, that made certain actions within the guts of IE very easy to do, but polluted the exposed object model and overall tree hiearchy. Well, it was time to fix that. If you are interested in how we fixed it, go check out my entry All your &lt;base&gt; are belong to us.</p>
	<p>There have been some comments on the post so I&#8217;ll try to cover them over here with what might be some interesting posts about how IE works.</p>
<img src="http://weblogs.asp.net/aggbug.aspx?PostID=424084" width="1" height="1"/><br />
<span style="font-size:8pt; font-style:italic">http://weblogs.asp.net/justin_rogers/archive/2005/08/30/424084.aspx</span></p>
]]></content:encoded>
			<wfw:commentRss>http://thelivechatsoftware.blogsome.com/2008/03/26/important-changes-to-the-base-element-for-ie-7-2/feed/</wfw:commentRss>
	</item>
		<item>
		<title>Why Yahoo should say Yes to MicroSoft</title>
		<link>http://thelivechatsoftware.blogsome.com/2008/03/26/why-yahoo-should-say-yes-to-microsoft-2/</link>
		<comments>http://thelivechatsoftware.blogsome.com/2008/03/26/why-yahoo-should-say-yes-to-microsoft-2/#comments</comments>
		<pubDate>Wed, 26 Mar 2008 04:00:21 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Live Chat software</category>
		<guid>http://thelivechatsoftware.blogsome.com/2008/03/26/why-yahoo-should-say-yes-to-microsoft-2/</guid>
		<description><![CDATA[	Also see: Help John Baez and Mike Stay!
One thing about Jerry Yang that I always have admired is that he cares. He cares about his employees. He cares about his products. He cares about his shareholders. Most of all he cares about building a world class company that can be great at what it does.
	If [...]]]></description>
			<content:encoded><![CDATA[	<p style="line-height: 150%"><i>Also see: <a href="http://annil12.blogsome.com/2008/03/24/help-john-baez-and-mike-stay-2/"  title="Help John Baez and Mike Stay!">Help John Baez and Mike Stay!</a></i></p>
One thing about Jerry Yang that I always have admired is that he cares. He cares about his employees. He cares about his products. He cares about his shareholders. Most of all he cares about building a world class company that can be great at what it does.</p>
	<p>If you look at Yahoo singularly, it is a great company. For he and David Filo to build a company with more than 6B in sales and more than 25B in market cap is an astounding feat. Unfortunately for Yahoo, it has had to weather both the Internet Bubble Bursting and the emergence of Google as a force in search and online advertising.</p>
	<p>These are both issues because Wall Street has made them issues. The bubble speaks for itself. Google is a Wall Street issue for Yahoo because Wall Street wants Yahoo to keep up with the Googles.</p>
	<p>That&#8217;s a problem for Jerry. Building a world class Yahoo to be the best company it possibly can be using the management skills that Jerry and company have is a far different challenge than optimizing the stock price. Particularly when Google is your stock comp.</p>
	<p>Which is exactly why Jerry and David should sell to MSFT. </p>
	<p>If there is one thing Microsoft does well , its ignore Wall Street and invest in its corporate strategies. It has so many huge lines of business, that Wall Street has learned to just let those that need to germinate do so. XBox. MSN. Online. Microsoft gets more leash from Wall Street to develop businesses than any company on the planet.</p>
	<p>So the question isn&#8217;t whether Yahoo sho<a id="more-321"></a>uld sell. It should. The only question is what the structure of the deal should look like so that Jerry and David can achieve many of the goals they set out to accomplish on the net under the MSFT umbrella. Jerry definitely is about customers first. This is his chance to show it. This deal accelerates his opportunity to get customers where he wants to take them if he negotiates it right. Something I dint think would be that hard. There is too much upside for Microsoft to nitpick the non financial deal points.</p>
	<p>What about Google ? </p>
	<p>Google also is a company that wants to put its strategic goals ahead of what Wall Street wants. When the stock is trending up, that&#8217;s easy to do. If we are in the middle of a market correction of any severity at all, then Google could get hit with its own Wall Street &#8220;double whammy&#8221;.</p>
	<p>First the downward pressure on its stock price. After several days of seeing the stock down 50 bucks during the trading day, Google is feeling exactly what Yahoo felt when the bubble burst. That queasy sense of fear around the company. The questioning of what could possibly happen to the stock, the impact on employee options and the inevitable questioning of Google traditions. 10 to 20pct of your time on other projects ? Not when the stock price is down 200 dollars in the past 3 months. Again.</p>
	<p>The 2ND whammy would happen if Yahoo was no longer a stand alone stock. Even if the Google stock price suffered, there was always the comfort of &#8220;outperforming Yahoo&#8221;. Wall Street, employees, small stock owners always had the<br />
<div class="interline"><a href="http://www.multisoftgroup.com/" title="Custom Software Solutions">Custom Software Solutions</a>. Billing and Invoicing Solutions, eCommerce and Website design.
</div>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/startup-shutdown-and-related-matters/"  title="Startup, Shutdown and related matters">Startup, Shutdown and related matters</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://annil12.blogsome.com/2008/03/24/infrequent-blogging-2/"  title="Infrequent blogging">Infrequent blogging</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter66.rticlz.com/2008/03/25/from-c-to-java-part-3/"  title="From C# to Java:  Part 3">From C# to Java:  Part 3</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter66.rticlz.com/2008/03/22/resizing-a-form-has-always-been-a-pain-in-the-rectum/"  title="Resizing a Form has always been a pain in the rectum...">Resizing a Form has always been a pain in the rectum&#8230;</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://annil12.blogsome.com/2008/03/25/the-ncaa-and-the-hoosiers-2/"  title="The NCAA and the Hoosiers">The NCAA and the Hoosiers</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter66.rticlz.com/2008/03/25/from-c-to-java-part-3/"  title="From C# to Java:  Part 3">From C# to Java:  Part 3</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/24/jsr-203-more-new-io-apis-nio2/"  title="JSR-203 more New I/O APIs - NIO.2">JSR-203 more New I/O APIs - NIO.2</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter66.rticlz.com/2008/03/25/the-exception-model/"  title="The Exception Model">The Exception Model</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/23/binding-to-net-frameworks-assemblies/"  title="Binding to .NET Frameworks Assemblies">Binding to .NET Frameworks Assemblies</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma1990.edublogs.org/2008/03/23/silverlight-2-beta-1-cross-domain-bug/"  title="Silverlight 2 Beta 1 Cross Domain Bug">Silverlight 2 Beta 1 Cross Domain Bug</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://simma1990.edublogs.org/2008/03/24/data-types-a-la-carte/"  title="Data Types a la Carte">Data Types a la Carte</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://annil12.blogsome.com/2008/03/24/the-2-technology-magazines-you-should-read-2/"  title="The 2 Technology Magazines You Should Read">The 2 Technology Magazines You Should Read</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter66.rticlz.com/2008/03/24/merry-christmas-indeed/"  title="Merry Christmas Indeed!">Merry Christmas Indeed!</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/23/startup-shutdown-and-related-matters-2/"  title="Startup, Shutdown and related matters">Startup, Shutdown and related matters</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/25/rest2sql-in-a-jiffy-with-tagspace-for-spice-2/"  title="REST2SQL in a Jiffy, with Tagspace for Spice">REST2SQL in a Jiffy, with Tagspace for Spice</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/24/jsr-203-more-new-io-apis-nio2/"  title="JSR-203 more New I/O APIs - NIO.2">JSR-203 more New I/O APIs - NIO.2</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://annil12.blogsome.com/2008/03/24/the-obligatory-halo-2-partial-review-and-thumbs-up-2/"  title="The obligatory Halo 2 partial review and thumbs up.">The obligatory Halo 2 partial review and thumbs up.</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/important-changes-to-the-base-element-for-ie-7/"  title="Important changes to the BASE element for IE 7">Important changes to the BASE element for IE 7</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://thelivechatsoftware.blogsome.com/2008/03/23/generics-and-net-2/"  title="Generics and .NET">Generics and .NET</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter66.rticlz.com/2008/03/22/aspnet-mvc-in-codeplex-and-extensible-unit-testing/"  title="ASP.NET MVC in CodePlex and Extensible Unit Testing">ASP.NET MVC in CodePlex and Extensible Unit Testing</a></i></p>
 Yahoo stock comp to give it confidence. If its not there, all the eyes are staring right at Google evaluating and questioning every number and corporate action.</p>
	<p>Its a level of scrutiny and pressure that can and will change the corporate culture of any company going through a maturation phase. </p>
	<p>So Yahoo should say yes. Its less about the money than about finally achieving the corporate goals set out more than a decade ago.</p>
	<p>One time Jerry told me that Yahoo stood for You Always Have Other Options. This time Yahoo doesn&#8217;t, but their customers options could improve exponentially if Yahoo says yes.</p>
	<h6 style="clear: both; padding: 8px 0 0 0; height: 2px; font-size: 1px; border: 0; margin: 0; padding: 0;"></h6>
Permalink &#160;|&#160;Email this &#160;|&#160;Linking&#160;Blogs &#160;|&#160;Comments </p>
	<p><span style="font-size:8pt; font-style:italic">http://www.blogmaverick.com/2008/02/03/why-yahoo-should-say-yes-to-microsoft/</span></p>
]]></content:encoded>
			<wfw:commentRss>http://thelivechatsoftware.blogsome.com/2008/03/26/why-yahoo-should-say-yes-to-microsoft-2/feed/</wfw:commentRss>
	</item>
		<item>
		<title>A Quick Fix for the Validator SetFocusOnError Bug</title>
		<link>http://thelivechatsoftware.blogsome.com/2008/03/25/a-quick-fix-for-the-validator-setfocusonerror-bug-2/</link>
		<comments>http://thelivechatsoftware.blogsome.com/2008/03/25/a-quick-fix-for-the-validator-setfocusonerror-bug-2/#comments</comments>
		<pubDate>Tue, 25 Mar 2008 12:00:07 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Live Chat software</category>
		<guid>http://thelivechatsoftware.blogsome.com/2008/03/25/a-quick-fix-for-the-validator-setfocusonerror-bug-2/</guid>
		<description><![CDATA[	The ASP.NET validators have this nice property called &#8220;SetFocusOnError&#8221; that is supposed to set the focus to the first control that failed validation. This all works great until your validator control is inside a naming container. I ran into this recently when using validators in a DetailsView. Take this simple example:
	Also see: SIGPLAN Workshop on [...]]]></description>
			<content:encoded><![CDATA[	<div class=csharpcode>The ASP.NET validators have this nice property called &#8220;SetFocusOnError&#8221; that is supposed to set the focus to the first control that failed validation. This all works great until your validator control is inside a naming container. I ran into this recently when using validators in a DetailsView. Take this simple example:</div>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/22/sigplan-workshop-on-undergraduate-programming-language-curriculum/"  title="SIGPLAN Workshop on Undergraduate Programming Language Curriculum">SIGPLAN Workshop on Undergraduate Programming Language Curriculum</a></i></p>
	<pre class=csharpcode><span class=asp>&lt;%@ Page Language=&#8221;C#&#8221; %&gt;</span>
<span class=kwrd>&lt;</span><span class=html>script</span> <span class=attr>runat</span><span class=kwrd>=&#8221;server&#8221;</span><span class=kwrd>&gt;</span>
 <span class=kwrd>protected</span> <span class=kwrd>void</span> Page_Load(<span class=kwrd>object</span> sender, EventArgs e)
 {
 <span class=kwrd>if</span> (!IsPostBack)
 DataBind();
 }
<span class=kwrd>&lt;/</span><span class=html>script</span><span class=kwrd>&gt;</span>
<span class=kwrd>&lt;!</span><span class=html>DOCTYPE</span> <span class=attr>html</span> <span class=attr>PUBLIC</span> <span class=kwrd>&#8220;-//W3C//DTD XHTML 1.0 Transitional//EN&#8221;</span> <span class=kwrd>&#8220;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&#8221;</span><span class=kwrd>&gt;</span>
<span class=kwrd>&lt;</span><span class=html>html</span> <span class=attr>xmlns</span><span class=kwrd>=&#8221;http://www.w3.org/1999/xhtml&#8221;</span><span class=kwrd>&gt;</span>
<span class=kwrd>&lt;</span><span class=html>head</span> <span class=attr>runat</span><span class=kwrd>=&#8221;server&#8221;</span><span class=kwrd>&gt;</span>
 <span class=kwrd>&lt;</span><span class=html>title</span><span class=kwrd>&gt;&lt;/</span><span class=html>title</span><span class=kwrd>&gt;</span>
<span class=kwrd>&lt;/</span><span class=html>head</span><span class=kwrd>&gt;</span>
<span class=kwrd>&lt;</span><span class=html>body</span><span class=kwrd>&gt;</span>
<span class=kwrd>&lt;</span><span class=html>form</span> <span class=attr>id</span><span class=kwrd>=&#8221;_frm&#8221;</span> <span class=attr>runat</span><span class=kwrd>=&#8221;server&#8221;</span><span class=kwrd>&gt;</span>
 <span class=kwrd>&lt;</span><span class=html>asp:DetailsView</span>
 <span class=attr>ID</span><span class=kwrd>=&#8221;dv1&#8243;</span>
 <span class=attr>DefaultMode</span><span class=kwrd>=&#8221;Edit&#8221;</span>
 <span class=attr>DataSource</span><span class=kwrd>=&#8217;&lt;%# new object[1] %&gt;&#8217;</span>
 <span class=attr>runat</span><span class=kwrd>=&#8221;server&#8221;</span>
 <span class=kwrd>&gt;</span>
 <span class=kwrd>&lt;</span><span class=html>Fields</span><span class=kwrd>&gt;</span>
 <span class=kwrd>&lt;</span><span class=html>asp:TemplateField</span> <span class=attr>HeaderText</span><span class=kwrd>=&#8221;First Name:&#8221;</span><span class=kwrd>&gt;</span>
 <span class=kwrd>&lt;</span><span class=html>EditItemTemplate</span><span class=kwrd>&gt;</span>
 <span class=kwrd>&lt;</span><span class=html>asp:TextBox</span> <span class=attr>ID</span><span class=kwrd>=&#8221;FirstNameTextBox&#8221;</span> <span class=attr>runat</span><span class=kwrd>=&#8221;server&#8221;</span> <span class=kwrd>/&gt;</span>
 <span class=kwrd>&lt;</span><span class=html>asp:RequiredFieldValidator</span>
 <span class=attr>ID</span><span class=kwrd>=&#8221;FirstNameValidator1&#8243;</span>
 <span class=attr>ControlToValidate</span><span class=kwrd>=&#8221;FirstNameTextBox&#8221;</span>
 <span class=attr>ErrorMessage</span><span class=kwrd>=&#8221;First name is required.&#8221;</span>
 <span class=attr>Display</span><span class=kwrd>=&#8221;Dynamic&#8221;</span>
 <span class=attr>EnableClientScript</span><span class=kwrd>=&#8221;false&#8221;</span>
 <span class=attr>SetFocusOnError</span><span class=kwrd>=&#8221;true&#8221;</span>
 <span class=attr>ValidationGroup</span><span class=kwrd>=&#8221;bug&#8221;</span>
 <span class=attr>Text</span><span class=kwrd>=&#8221;*&#8221;</span>
 <span class=attr>runat</span><span class=kwrd>=&#8221;server&#8221;</span>
 <span class=kwrd>/&gt;</span>
 <span class=kwrd>&lt;/</span><span class=html>EditItemTemplate</span><span class=kwrd>&gt;</span>
 <span class=kwrd>&lt;/</span><span class=html>asp:TemplateField</span><span class=kwrd>&gt;</span>
 <span class=kwrd>&lt;/</span><span class=html>Fields</span><span class=kwrd>&gt;</span>
 <span class=kwrd>&lt;</span><span class=html>FooterTemplate</span><span class=kwrd>&gt;</span>
 <span class=kwrd>&lt;</span><span class=html>asp:ValidationSummary</span>
 <span class=attr>ID</span><span class=kwrd>=&#8221;vs1&#8243;</span>
 <span class=attr>DisplayMode</span><span class=kwrd>=&#8221;List&#8221;</span>
 <span class=attr>ValidationGroup</span><span class=kwrd>=&#8221;bug&#8221;</span>
 <span class=attr>runat</span><span class=kwrd>=&#8221;server&#8221;</span>
 <span class=kwrd>/&gt;</span>
 <span class=kwrd>&lt;</span><span class=html>asp:Button</span>
 <span class=attr>ID</span><span class=kwrd>=&#8221;Button1&#8243;</span>
 <span class=attr>Text</span><span class=kwrd>=&#8221;Post Back&#8221;</span>
 <span class=attr>ValidationGroup</span><span class=kwrd>=&#8221;bug&#8221;</span>
 <span class=attr>runat</span><span class=kwrd>=&#8221;server&#8221;</span>
 <span class=kwrd>/&gt;</span>
 <span class=kwrd>&lt;/</span><span class=html>FooterTemplate</span><span class=kwrd>&gt;</span>
 <span class=kwrd>&lt;/</span><span class=html>asp:DetailsView</span><span class=kwrd>&gt;</span>
<span class=kwrd>&lt;/</span><span class=html>form</span><span class=kwrd>&gt;</span>
<span class=kwrd>&lt;/</span><span class=html>body</span><span class=kwrd>&gt;</span>
<span class=kwrd>&lt;/</span><span class=html>html</span><span class=kwrd>&gt;</span></pre>
	<p><style type=text/css>.csharpcode,.csharpcode pre<br />
{<br />
	font-size: small;<br />
	color: black;<br />
	font-family: consolas, &#8220;Courier New&#8221;, courier, monospace;<br />
	background-color: #ffffff;<br />
	/*white-space: pre;*/<br />
}<br />
.csharpcode pre { margin: 0em; }<br />
.csharpcode.rem { color: #008000; }<br />
.csharpcode.kwrd { color: #0000ff; }<br />
.csharpcode.str { color: #006080; }<br />
.csharpcode.op { color: #0000c0; }<br />
.csharpcode.preproc { color: #cc6633; }<br />
.csharpcode.asp { background-color: #ffff00; }<br />
.csharpcode.html { color: #800000; }<br />
.csharpcode.attr { color: #ff0000; }<br />
.csharpcode.alt<br />
{<br />
	background-color: #f4f4f4;<br />
	width: 100%;<br />
	margin: 0em;<br />
}<br />
.csharpcode.lnum { color: #606060; }<br />
</style></p>
	<div class=csharpcode>If you run this page and do a view source you&#8217;ll see that the FirstNameTextBox gets rendered like this:</div>
<a id="more-320"></a><br />
<pre class=csharpcode><span class=kwrd>&lt;</span><span class=html>input</span> <span class=attr>name</span><span class=kwrd>=&#8221;dv1$FirstNameTextBox&#8221;</span> <span class=attr>type</span><span class=kwrd>=&#8221;text&#8221;</span> <span class=attr>id</span><span class=kwrd>=&#8221;dv1_FirstNameTextBox&#8221;</span> <span class=kwrd>/&gt;</span></pre>
	<div class=csharpcode>If you just do a post back without entering a value to cause the validator to fail it will output this line of java script in an attempt to set the focus to the invalid element:</div>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/24/win-friends-and-influence-your-team-2/"  title="Win friends and influence your team">Win friends and influence your team</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/23/binding-to-net-frameworks-assemblies/"  title="Binding to .NET Frameworks Assemblies">Binding to .NET Frameworks Assemblies</a></i></p>
	<pre class=csharpcode>WebForm_AutoFocus(<span class=str>&#8216;FirstNameTextBox&#8217;</span>);</pre>
	<p><style type=text/css>.csharpcode,.csharpcode pre<br />
{<br />
	font-size: small;<br />
	color: black;<br />
	font-family: consolas, &#8220;Courier New&#8221;, courier, monospace;<br />
	background-color: #ffffff;<br />
	/*white-space: pre;*/<br />
}<br />
.csharpcode pre { margin: 0em; }<br />
.csharpcode.rem { color: #008000; }<br />
.csharpcode.kwrd { color: #0000ff; }<br />
.csharpcode.str { color: #006080; }<br />
.csharpcode.op { color: #0000c0; }<br />
.csharpcode.preproc { color: #cc6633; }<br />
.csharpcode.asp { background-color: #ffff00; }<br />
.csharpcode.html { color: #800000; }<br />
.csharpcode.attr { color: #ff0000; }<br />
.csharpcode.alt<br />
{<br />
	background-color: #f4f4f4;<br />
	width: 100%;<br />
	margin: 0em;<br />
}<br />
.csharpcode.lnum { color: #606060; }<br />
</style></p>
	<div class=csharpcode>See anything wrong with this? It would seem that the validators just use the string value you typed in for the ControlToValidate property rather than doing a FindControl and using the UniqueID. This is exactly what happens and I verified it with reflector. The Validate method on BaseValidator does this:</div>
	<pre class=csharpcode><span class=kwrd>if</span> ((!<span class=kwrd>this</span>.IsValid &amp;&amp; (<span class=kwrd>this</span>.Page != <span class=kwrd>null</span>)) &amp;&amp; <span class=kwrd>this</span>.SetFocusOnError)
{
 <span class=kwrd>this</span>.Page.SetValidatorInvalidControlFocus(<span class=kwrd>this</span>.ControlToValidate);
}</pre>
	<p><style type=text/css>.csharpcode,.csharpcode pre<br />
{<br />
	font-size: small;<br />
	color: black;<br />
	font-family: consolas, &#8220;Courier New&#8221;, courier, monospace;<br />
	background-color: #ffffff;<br />
	/*white-space: pre;*/<br />
}<br />
.csharpcode pre { margin: 0em; }<br />
.csharpcode.rem { color: #008000; }<br />
.csharpcode.kwrd { color: #0000ff; }<br />
.csharpcode.str { color: #006080; }<br />
.csharpcode.op { color: #0000c0; }<br />
.csharpcode.preproc { color: #cc6633; }<br />
.csharpcode.asp { background-color: #ffff00; }<br />
.csharpcode.html { color: #800000; }<br />
.csharpcode.attr { color: #ff0000; }<br />
.csharpcode.alt<br />
{<br />
	background-color: #f4f4f4;<br />
	width: 100%;<br />
	margin: 0em;<br />
}<br />
.csharpcode.lnum { color: #606060; }<br />
</style></p>
	<div class=csharpcode>If you follow the call to SetValidatorInvalidControlFocus you&#8217;ll see that it never resolves the full UniqueID of the control that its going to set focus to.</div>
	<div class=csharpcode>&nbsp;</div>
	<div class=csharpcode>Ok, so this sucks. How do I work around it. My solution was to simply ditch using the SetFocusOnError property and implement the focus logic myself which is actually pretty easy. I overrode Validate method on my Page like this:</div>
	<div class="interline"><a href="http://www.jbTop.com/" title="Live Person Software">Live Person Software</a>: Just one single click and your website visitors are getting into instant message chatting with you.
</div>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/24/microformats-are-like-rfid-tags-for-the-web-2/"  title="Microformats are like RFID tags for the Web">Microformats are like RFID tags for the Web</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/startup-shutdown-and-related-matters/"  title="Startup, Shutdown and related matters">Startup, Shutdown and related matters</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/when-are-two-algorithms-the-same/"  title="When Are Two Algorithms the Same?">When Are Two Algorithms the Same?</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/23/reflectiontypeloadexception-2/"  title="ReflectionTypeLoadException">ReflectionTypeLoadException</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://chatter.blogsome.com/2008/03/24/jsr-203-more-new-io-apis-nio2/"  title="JSR-203 more New I/O APIs - NIO.2">JSR-203 more New I/O APIs - NIO.2</a></i></p>
	<pre class=csharpcode><span class=kwrd>public</span> <span class=kwrd>override</span> <span class=kwrd>void</span> Validate(<span class=kwrd>string</span> group)
{
 <span class=kwrd>base</span>.Validate(group);
	
 <span class=rem>// find the first validator that failed</span>
 <span class=kwrd>foreach</span> (IValidator validator <span class=kwrd>in</span> GetValidators(group))
 {
 <span class=kwrd>if</span> (validator <span class=kwrd>is</span> BaseValidator &amp;&amp; !validator.IsValid)
 {
 BaseValidator bv = (BaseValidator)validator;
	
 <span class=rem>// look up the control that failed validation</span>
 Control target =
 bv.NamingContainer.FindControl(bv.ControlToValidate);
	
 <span class=rem>// set the focus to it</span>
 <span class=kwrd>if</span> (target != <span class=kwrd>null</span>)
 target.Focus();
	
 <span class=kwrd>break</span>;
 }
 }
}</pre>
	<pre class=csharpcode>If your using C# 3 this is even easier using LINQ:</pre>
	<pre class=csharpcode><span class=kwrd>public</span> <span class=kwrd>override</span> <span class=kwrd>void</span> Validate(<span class=kwrd>string</span> group)
{
 <span class=kwrd>base</span>.Validate(group);
	
 <span class=rem>// get the first validator that failed</span>
 var validator = GetValidators(group)
.OfType&lt;BaseValidator&gt;()
.FirstOrDefault(v =&gt; !v.IsValid);
	
 <span class=rem>// set the focus to the control</span>
 <span class=rem>// that the validator targets</span>
 <span class=kwrd>if</span> (validator != <span class=kwrd>null</span>)
 {
 Control target = validator
.NamingContainer
.FindControl(validator.ControlToValidate);
	
 <span class=kwrd>if</span> (target != <span class=kwrd>null</span>)
 target.Focus();
 }
}
</pre>
	<p><style type=text/css>.csharpcode,.csharpcode pre<br />
{<br />
	font-size: small;<br />
	color: black;<br />
	font-family: consolas, &#8220;Courier New&#8221;, courier, monospace;<br />
	background-color: #ffffff;<br />
	/*white-space: pre;*/<br />
}<br />
.csharpcode pre { margin: 0em; }<br />
.csharpcode.rem { color: #008000; }<br />
.csharpcode.kwrd { color: #0000ff; }<br />
.csharpcode.str { color: #006080; }<br />
.csharpcode.op { color: #0000c0; }<br />
.csharpcode.preproc { color: #cc6633; }<br />
.csharpcode.asp { background-color: #ffff00; }<br />
.csharpcode.html { color: #800000; }<br />
.csharpcode.attr { color: #ff0000; }<br />
.csharpcode.alt<br />
{<br />
	background-color: #f4f4f4;<br />
	width: 100%;<br />
	margin: 0em;<br />
}<br />
.csharpcode.lnum { color: #606060; }<br />
</style></p>
	<div class="interline"><a href="http://www.multisoftgroup.com/" title="Help Desk Software">Help Desk Software</a>: for your business. Java Custom Software Soulutions and Service.
</div>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/24/startup-shutdown-and-related-matters/"  title="Startup, Shutdown and related matters">Startup, Shutdown and related matters</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/23/binding-to-net-frameworks-assemblies/"  title="Binding to .NET Frameworks Assemblies">Binding to .NET Frameworks Assemblies</a></i></p>
	<p style="line-height: 150%"><i>Also see: <a href="http://cahtter.blogsome.com/2008/03/23/silverlight-2-beta-1-cross-domain-bug/"  title="Silverlight 2 Beta 1 Cross Domain Bug">Silverlight 2 Beta 1 Cross Domain Bug</a></i></p>
	<pre class=csharpcode>I hope this saves someone the headache of tracking this down.</pre>
	<pre class=csharpcode><style type=text/css>.csharpcode,.csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, &#8220;Courier New&#8221;, courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode.rem { color: #008000; }
.csharpcode.kwrd { color: #0000ff; }
.csharpcode.str { color: #006080; }
.csharpcode.op { color: #0000c0; }
.csharpcode.preproc { color: #cc6633; }
.csharpcode.asp { background-color: #ffff00; }
.csharpcode.html { color: #800000; }
.csharpcode.attr { color: #ff0000; }
.csharpcode.alt
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode.lnum { color: #606060; }
</style></pre>
<img src="http://weblogs.asp.net/aggbug.aspx?PostID=2975478" width="1" height="1"/><br />
<span style="font-size:8pt; font-style:italic">http://weblogs.asp.net/dfindley/archive/2007/06/29/a-quick-fix-for-the-validator-setfocusonerror-bug.aspx</span></p>
]]></content:encoded>
			<wfw:commentRss>http://thelivechatsoftware.blogsome.com/2008/03/25/a-quick-fix-for-the-validator-setfocusonerror-bug-2/feed/</wfw:commentRss>
	</item>
	</channel>
</rss>
