<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Allen Guest</title>
        <link>http://geekswithblogs.net/aguest/Default.aspx</link>
        <description>try { MicrosoftRuleWorld(); } catch ( FailedException ex ) { tryAgain(); } finally { InstallLinux(); }</description>
        <language>en-US</language>
        <copyright>Allen Guest</copyright>
        <managingEditor>uptaphunk69@hotmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <image>
            <title>Allen Guest</title>
            <url>http://geekswithblogs.net/images/RSS2Image.gif</url>
            <link>http://geekswithblogs.net/aguest/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <item>
            <title>Update</title>
            <link>http://geekswithblogs.net/aguest/archive/2008/10/20/125960.aspx</link>
            <description>Working at TransCanada now so if you are an old friend send me a holler and we can hit up some lunch. I haven't bumped into anyone I know yet - it's quite strange. Well I've bumped into a couple of people I know in Seattle here - in Calgary. Small world.&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=125960"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=125960" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/125960.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2008/10/20/125960.aspx</guid>
            <pubDate>Mon, 20 Oct 2008 18:03:12 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/125960.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2008/10/20/125960.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/125960.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/125960.aspx</trackback:ping>
        </item>
        <item>
            <title>Back to Canada</title>
            <category>Personal</category>
            <link>http://geekswithblogs.net/aguest/archive/2008/03/05/120228.aspx</link>
            <description>Well not entirely - I'm still &lt;span style="font-weight: bold;"&gt;working&lt;/span&gt; in Seattle, but yes, I moved back to good old Canada.&lt;br /&gt;
&lt;br /&gt;
Decided to try independent contracting up there - we'll see how it goes as well. Threw together a web site at http://www.onshoresoftware.ca with some personal information about myself and experience.&lt;br /&gt;
&lt;br /&gt;
I'd like to get something going in Calgary but its been a bit of a slow process since I spend half of my time down here and 3/4 of my time STILL working while I'm in Calgary.&lt;br /&gt;
&lt;br /&gt;
Anyhow if you have any solid leads in Calgary for an experienced C# .NET developer / applications lead fire me an email at allen.d.guest (at) gmail.com.&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=120228"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=120228" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/120228.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2008/03/05/120228.aspx</guid>
            <pubDate>Wed, 05 Mar 2008 15:44:39 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/120228.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2008/03/05/120228.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/120228.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/120228.aspx</trackback:ping>
        </item>
        <item>
            <title>Microsoft's XNA</title>
            <category>Personal</category>
            <link>http://geekswithblogs.net/aguest/archive/2006/11/15/97201.aspx</link>
            <description>&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The beta2 version was released a couple of weeks ago and I have to say it's pretty awesome. For keeping up on the lastest developments bookmark &lt;A href="http://blogs.msdn.com/xna/"&gt;http://blogs.msdn.com/xna/&lt;/A&gt;. Writing games got me addicted to coding back in the old Vic20 days and continues to be a hobby passion. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The consolidation of DirectX into a more unified managed framework is exciting and I hope to play with it over the next couple of weeks.&lt;/FONT&gt;&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=97201"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=97201" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/97201.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2006/11/15/97201.aspx</guid>
            <pubDate>Wed, 15 Nov 2006 12:30:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/97201.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2006/11/15/97201.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/97201.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/97201.aspx</trackback:ping>
        </item>
        <item>
            <title>More AJAX</title>
            <category>Coding with C#</category>
            <link>http://geekswithblogs.net/aguest/archive/2005/12/22/63891.aspx</link>
            <description>&lt;P&gt;Looks like I am staying on my contract for another 6 months. While I am in the midst of finishing up my real projects, I am tasked with putting together an integration application with &lt;A href="http://maps.google.com"&gt;http://maps.google.com&lt;/A&gt;&amp;nbsp;and City of Seattle address data. What is quite funny is that even though I am utilizing C# on the backend to perform my queries, the application is 80% javascript. Who would have thought we were be reverting back to the client so heavily?&lt;/P&gt;
&lt;P&gt;Personally, I find .NET's mechanism of the full page postback to be quite archaic and it has always bothered me. Leveraging AJAX, my .NET server controls are nothing more than javascript renderers that communicate with the server for their data needs. I have to say that AJAX is a cleaner approach to client/server communication that the in the old days when we had to perform cross-frame postbacks to achieve similar effects.&lt;/P&gt;
&lt;P&gt;Update: Look to &lt;A href="http://web1.seattle.gov/dpd/GoogleDPD"&gt;http://web1.seattle.gov/dpd/GoogleDPD&lt;/A&gt; in the next few days for an Alpha version of some of the City of Seattle's permit and activity data linked with Google.&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=63891"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=63891" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/63891.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2005/12/22/63891.aspx</guid>
            <pubDate>Thu, 22 Dec 2005 11:20:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/63891.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2005/12/22/63891.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/63891.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/63891.aspx</trackback:ping>
        </item>
        <item>
            <title>AJAX</title>
            <category>Coding with C#</category>
            <link>http://geekswithblogs.net/aguest/archive/2005/12/02/61909.aspx</link>
            <description>&lt;P&gt;&lt;FONT face=Arial&gt;I recently had the opportunity to dabble in a concept project utilizing AJAX and have been quite impressed with the implementation of a free library found at &lt;/FONT&gt;&lt;A href="http://www.schwarz-interactive.de/"&gt;&lt;FONT face=Arial&gt;http://www.schwarz-interactive.de/&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Arial&gt;&amp;nbsp;for 1.1 or &lt;/FONT&gt;&lt;A href="http://dotnet2.schwarz-interactive.de/"&gt;&lt;FONT face=Arial&gt;http://dotnet2.schwarz-interactive.de/&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Arial&gt;&amp;nbsp;for 2.0.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial&gt;Implementation is as easy as setting a reference to the library, adding an entry to your web.config and decorating the exposed methods. The decorated methods are exposed to your client side javascript. When those methods are called from Javascript, an HTTP get is performed and the parameters are serialized / deserialized and the original marked up method is invoked. Quite elegant.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial&gt;In addition the library supports direct support for the majority of the .NET base classes, including the DataSet - as well as exposing an IAJAXObjectConverter interface where you can supply support for serialization of your own custom classes. This gives the ability of the client code to directly access the server side object as a client side object. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=61909"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=61909" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/61909.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2005/12/02/61909.aspx</guid>
            <pubDate>Fri, 02 Dec 2005 10:54:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/61909.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2005/12/02/61909.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/61909.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/61909.aspx</trackback:ping>
        </item>
        <item>
            <title>HttpHandlers : A Practical Example</title>
            <category>Coding with C#</category>
            <link>http://geekswithblogs.net/aguest/archive/2005/11/01/58797.aspx</link>
            <description>&lt;P&gt;I recently had the need to tunnel a protected resource through a firewall and found a great practical use for HttpHandlers.&lt;/P&gt;
&lt;P&gt;Click &lt;A href="http://geekswithblogs.net/aguest/articles/58795.aspx"&gt;http://geekswithblogs.net/aguest/articles/58795.aspx&lt;/A&gt;&amp;nbsp;to read walkthrough and complete code.&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=58797"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=58797" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/58797.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2005/11/01/58797.aspx</guid>
            <pubDate>Tue, 01 Nov 2005 09:50:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/58797.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2005/11/01/58797.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/58797.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/58797.aspx</trackback:ping>
        </item>
        <item>
            <title>The interesting DropDownList ASP.NET control behavior</title>
            <category>Coding with C#</category>
            <link>http://geekswithblogs.net/aguest/archive/2005/09/26/55077.aspx</link>
            <description>&lt;P&gt;So if you've decided to use syntax such as this&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;FONT face="Courier New" size=2&gt;myDropDownListBox.Items[0].Selected = true;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;or&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;FONT face="Courier New" size=2&gt;ListItem foo = myDropDownListBox.Items.FindByValue(&amp;#8221;foo&amp;#8221;);&lt;BR&gt;foo.Selected = true;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;you will get the 'A DropDownList cannot have multiple items selected' error.&lt;/P&gt;
&lt;P&gt;Seems to me that if the code sets the Selected attribute on an item in a list which by definition can only have one item selected, that the ListItem instance would set the SelectedIndex automatically for me. Seems like a no-brainer. I guess Microsoft found some sort of use for this error being thrown from a DropDownList control - just don't ask me what that could be.&lt;/P&gt;
&lt;P&gt;I guess I'd rather see that the DropDownList have DropDownList items if the Selected property was pretty much useless and will only cause errors if used in a DropDownList.&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=55077"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=55077" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/55077.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2005/09/26/55077.aspx</guid>
            <pubDate>Mon, 26 Sep 2005 17:00:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/55077.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2005/09/26/55077.aspx#feedback</comments>
            <slash:comments>17</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/55077.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/55077.aspx</trackback:ping>
        </item>
        <item>
            <title>Time for my yearly blog post</title>
            <category>Coding with C#</category>
            <link>http://geekswithblogs.net/aguest/archive/2005/09/22/54684.aspx</link>
            <description>&lt;P&gt;Well its been a great year. I'm thinking of moving on from my current contract - been 4 years slogging on at the same area. Longest contract I've ever had - heck, longest job I've ever had.&lt;/P&gt;
&lt;P&gt;Well, on to more interesting things -&amp;nbsp;like code. We have developed a unified Framework here where I am contracting at to centralize (aka reuse) more commonly used areas of functionality, mostly data access. All data access has been abstracted into static method calls such as (&lt;EM&gt;note class names have been changed&lt;/EM&gt;):&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;FONT face="Courier New" size=2&gt;DataSet myData = Framework.Data.Enterprise.EmployeeGateway.GetAllEmployees();&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P dir=ltr style="MARGIN-RIGHT: 0px"&gt;or, if a Business Object wrapper&amp;nbsp;was available, can be:&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;FONT face="Courier New" size=2&gt;EmployeeCollection&amp;nbsp;myEmployeeCollection = Framework.Data.Enterprise.BusinessObject.EmployeeGateway.GetAllEmployees();&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P dir=ltr style="MARGIN-RIGHT: 0px"&gt;An application that wants employee data simply calls one of the methods above. Simple, huh? Now, we wanted to deploy the application behind a firewall. We no longer had direct access to the database and all data requests had to know be funneled through web services. But who wanted to recode 398 stored procedures? Using a bit of reflection, I was able to potentially open up all of the static method calls so that an application running outside the firewall was able to make the same database call without knowing it was actually been funnelled through one (or more!) web services for its data. Code tidbit below:&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P dir=ltr style="MARGIN-RIGHT: 0px"&gt;&lt;FONT face="Courier New" size=2&gt;public class EmployeeGateway&lt;BR&gt;{&lt;BR&gt;&amp;nbsp; private EmployeeGateway() { }&lt;BR&gt;&amp;nbsp; public static DataSet GetAllEmployees()&lt;BR&gt;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ExecDataSetQuery(&amp;#8220;GET_ALL_EMPLOYEES&amp;#8220;, null);&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&amp;nbsp; }&lt;BR&gt;&amp;nbsp; private static DataSet ExecDataSetQuery(string sProc, SqlParameter[] parms)&lt;BR&gt;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Connection factory returns either a SqlConnection or a WebService instance&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// based on a Framework configuration file.&amp;nbsp;Connection information for a given&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // data source was either an encrypted connection string or an encrypted web&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // service endpoint.&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; object connection = ConnectionFactory.CreateConnection(DataSourceEnum.Employee);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DataSet ds = null;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (connection.GetType().Equals(typeof(SqlConnection))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;using (SqlConnection sqlConnection = connection as SqlConnection)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // standard SqlDataAdapter / Fill code here&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (connection.GetType().Equals(typeof(Framework.Web.Services.Enterprise.EmployeeGateway)))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using (Framework.Web.Services.Enterprise.EmployeeGateway webServiceConnection = connection as Framework.Web.Services.Enterprise.EmployeeGateway)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MethodInfo method = webServiceConnection.GetType().GetMethod(&lt;STRONG&gt;ExtractWebMethodName&lt;/STRONG&gt;(sProc);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (null != method)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ds = (DataSet)method.Invoke(webServiceConnection, Framework.Data.SqlController.&lt;STRONG&gt;ToObjectArray&lt;/STRONG&gt;(parms));&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new Framework.Data.DataException(String.Format(&amp;#8220;Unable to locate&amp;nbsp;Web Service name of {0} on the {1} connection.&amp;#8220;, sProc, DataSourceEnum.Employee.ToString()));&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (System.Exception ex)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // publish error to a central event log&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new Framework.Data.DataException(String.Format(&amp;#8220;Failed to execute&amp;nbsp;Web Service {0}.&amp;#8220;, webServiceConnection.ToString()), ex);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new Framework.Data.DataException(String.Format(&amp;#8220;Unhandled connection request {0} returned from ConnectionFactory.&amp;#8220;, connection.ToString());&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;BR&gt;&amp;nbsp; }&lt;BR&gt;}&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P dir=ltr style="MARGIN-RIGHT: 0px"&gt;The caveats of course is that the Web Service proxy names need to match the stored procedure names. Not a bad tradeoff if you don't have to write all the web service proxy instantiations in your code and get them for free. The bolded function names above are included below for completeness.&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P dir=ltr style="MARGIN-RIGHT: 0px"&gt;&lt;FONT face="Courier New" size=2&gt;internal&amp;nbsp;static string ExtractWebMethodName(string sProc)&lt;BR&gt;{&lt;BR&gt;&amp;nbsp; string webMethodName = sProc;&lt;BR&gt;&amp;nbsp; int sProcSeperatorIndex = sProc.LastIndexOf(&amp;#8220;.&amp;#8220;);&lt;BR&gt;&amp;nbsp; if (sProcSeperatorIndex &amp;gt; -1)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; webMethodName = sProc.SubString(sProcSeperatorIndex+1, sProc.Length - sProcSeperatorIndex);&lt;BR&gt;&amp;nbsp; return webMethodName;&lt;BR&gt;}&lt;/FONT&gt;&lt;/P&gt;
&lt;P dir=ltr style="MARGIN-RIGHT: 0px"&gt;&lt;FONT face="Courier New" size=2&gt;internal static Object[] ToObjectArray(SqlParameter[] parms)&lt;BR&gt;{&lt;BR&gt;&amp;nbsp; int parmLength = 0;&lt;BR&gt;&amp;nbsp; if (null != parms)&lt;BR&gt;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // figure out array length&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (SqlParameter parm in parms)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (parm.Direction != ParameterDirection.Output)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; parmLength++;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR&gt;&amp;nbsp; }&lt;BR&gt;&amp;nbsp; int index = 0;&lt;BR&gt;&amp;nbsp; object[] args = new object[parmLength];&lt;BR&gt;&amp;nbsp; if (null != parms)&lt;BR&gt;&amp;nbsp;&amp;nbsp;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (SqlParameter parm in parms)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (parm.Direction != ParameterDirection.Output)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;args[index++] = parm.Value;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR&gt;&amp;nbsp; }&lt;BR&gt;&amp;nbsp; return args;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;/BLOCKQUOTE&gt;&lt;/FONT&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=54684"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=54684" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/54684.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2005/09/22/54684.aspx</guid>
            <pubDate>Thu, 22 Sep 2005 14:54:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/54684.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2005/09/22/54684.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/54684.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/54684.aspx</trackback:ping>
        </item>
        <item>
            <title>So it's that time of year again...</title>
            <link>http://geekswithblogs.net/aguest/archive/2005/05/01/38808.aspx</link>
            <description>&lt;P&gt;So once a year or so I decide to build the latest and greatest computer within my budget and this time (drum roll) I'm going with AMD. I've been an Intel die-hard for so long and after reading and researching price/performance I've decided on the AMD FX-55. It looks sweet.&lt;/P&gt;
&lt;P&gt;So I've spec'd out my system and this is what I've come up with:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Purchased&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Lian-Li VX&amp;nbsp;PC-6070A&lt;BR&gt;&lt;A href="http://www.cluboverclocker.com/reviews/cases/lian_li/pc-6070b/840556007982.jpg"&gt;http://www.cluboverclocker.com/reviews/cases/lian_li/pc-6070b/840556007982.jpg&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;DFI Lan Party NForce4 SLI-DR Audio/GB-LAN/IEEE/PCI-E/SATA/DDR/ATX 64 939&lt;BR&gt;&lt;A href="http://dealtime.com/xPF-DFI_LanParty_NF4_SLI_DR_Socket_939_PCI_Express_Motherboard"&gt;http://dealtime.com/xPF-DFI_LanParty_NF4_SLI_DR_Socket_939_PCI_Express_Motherboard&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;1 GB DDR (2 pcs 512) PC-4000 (500) OCZ Dual Channel GoldVX (OCZ5001024ELDCGEVX-K)&lt;BR&gt;&lt;A href="http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Product_Code=140979&amp;amp;AFFIL=dt&amp;amp;NR=1"&gt;http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Product_Code=140979&amp;amp;AFFIL=dt&amp;amp;NR=1&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;OCZ OCZ52012U ModStream ATX 2.0 520W Power Supply&lt;BR&gt;&lt;A href="http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Store_Code=M&amp;amp;Product_Code=100162&amp;amp;Category_Code=ps-generic"&gt;http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Store_Code=M&amp;amp;Product_Code=100162&amp;amp;Category_Code=ps-generic&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;Logitech MX 3100 Cordless Keyboard / Laser Mouse&lt;BR&gt;&lt;A href="http://www.logitech.com/index.cfm/products/details/US/EN,CRID=2162,CONTENTID=9950"&gt;http://www.logitech.com/index.cfm/products/details/US/EN,CRID=2162,CONTENTID=9950&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Yet to Purchase&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN class=Product_Page_Title&gt;2 X Western Digital 74 GB SATA 10K Raptor (WD740GD) &lt;BR&gt;&lt;A href="http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Store_Code=M&amp;amp;Product_Code=150239"&gt;http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Store_Code=M&amp;amp;Product_Code=150239&lt;/A&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN class=Product_Page_Title&gt;&lt;SPAN class=Product_Page_Title&gt;NEC ND-3520A/GNB 16X Dual Layer DVD&amp;#177;RW (Black) (OEM) &lt;BR&gt;&lt;A href="http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Store_Code=M&amp;amp;Product_Code=160457"&gt;http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Store_Code=M&amp;amp;Product_Code=160457&lt;/A&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN class=Product_Page_Title&gt;&lt;SPAN class=Product_Page_Title&gt;&lt;SPAN class=Product_Page_Title&gt;BFG GeForce 6800 GT OC 256MB GDDR3/PCI-E/TV-Out/Dual-DVI &lt;BR&gt;&lt;A href="http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Store_Code=M&amp;amp;Product_Code=190482"&gt;http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Store_Code=M&amp;amp;Product_Code=190482&lt;/A&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN class=Product_Page_Title&gt;&lt;SPAN class=Product_Page_Title&gt;&lt;SPAN class=Product_Page_Title&gt;&lt;SPAN class=Product_Page_Title&gt;AMD Athlon 64 FX-55 (939&lt;BR&gt;&lt;A href="http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Store_Code=M&amp;amp;Product_Code=120465"&gt;http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Store_Code=M&amp;amp;Product_Code=120465&lt;/A&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN class=Product_Page_Title&gt;&lt;SPAN class=Product_Page_Title&gt;&lt;SPAN class=Product_Page_Title&gt;&lt;SPAN class=Product_Page_Title&gt;Zalman CNPS7700-Cu 120mm Heat Sink-w-Fan &lt;BR&gt;&lt;A href="http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Store_Code=M&amp;amp;Product_Code=130171"&gt;http://www.monarchcomputer.com/Merchant2/merchant.mv?Screen=PROD&amp;amp;Store_Code=M&amp;amp;Product_Code=130171&lt;/A&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;SPAN class=Product_Page_Title&gt;&lt;SPAN class=Product_Page_Title&gt;&lt;SPAN class=Product_Page_Title&gt;&lt;SPAN class=Product_Page_Title&gt;What is so awesome is that the OCZ memory (DDR500) works with the DFI mobo. 2-2-2-8 timings! What could be better than that? I'm building this little PC as we speak so I'll let you know how it goes.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=38808"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=38808" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/38808.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2005/05/01/38808.aspx</guid>
            <pubDate>Sun, 01 May 2005 16:17:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/38808.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2005/05/01/38808.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/38808.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/38808.aspx</trackback:ping>
        </item>
        <item>
            <title>Wow, have I been lazy?</title>
            <link>http://geekswithblogs.net/aguest/archive/2005/05/01/38806.aspx</link>
            <description>&lt;P&gt;It's been quite a while since my last blog post so let me try and recall some interesting things I've ran into since I've lasted posted. Books that I've read:&lt;/P&gt;
&lt;P&gt;Design Patterns in C# published by Addison Wesley ISBN 0-321-12697-1&lt;BR&gt;Programming C# published by O'Reilly ISBN 0-596-00309-9&lt;BR&gt;C# in a Nutshell by O'Reilly ISBN 0-596-00181-9&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=38806"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=38806" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/38806.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2005/05/01/38806.aspx</guid>
            <pubDate>Sun, 01 May 2005 16:00:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/38806.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2005/05/01/38806.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/38806.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/38806.aspx</trackback:ping>
        </item>
        <item>
            <title>Back from vacation and back into it</title>
            <link>http://geekswithblogs.net/aguest/archive/2004/07/26/8876.aspx</link>
            <description>&lt;P&gt;Well, I sure hope that the next version of the IDE has fixed the IIS integration bugs. VS 2003 fixed all of the editor bugs but has introduced some oddities with (my experience so far) asp.net and IIS.&lt;/P&gt;
&lt;P&gt;Having to re-execute aspreg_iis.exe -i a couple of times a month because somehow the IIS mappings with ASP.NET get buggered is a pet peeve. &lt;/P&gt;
&lt;P&gt;Unable to view page/control in designer error - even though the class &lt;STRONG&gt;IS&lt;/STRONG&gt; defined first in the file and a simple IDE quit and restart fixes it. The IDE seems to get confused sometimes when you have a base class like UserControl that you inherit from and add some common code and then you inherit once again to specialize. When viewing the specialized class in the designer you &lt;EM&gt;sometimes&lt;/EM&gt; get the designer error. Sometimes it works. No idea.&lt;/P&gt;
&lt;P&gt;IIS gets out of synch with VS sometimes as well. Haven't been able to pinpoint a repeatable pattern, however. Sometimes the IIS meta data gets buggered and you can't create virtual directories and have to go to the command line to remove them manually. This is probably more of a problem with the problematic MMC snap-ins - as well as the refreshing issue with them.&lt;/P&gt;
&lt;P&gt;Got any pet peeves? With IIS?&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=8876"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=8876" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/8876.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2004/07/26/8876.aspx</guid>
            <pubDate>Mon, 26 Jul 2004 20:33:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/8876.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2004/07/26/8876.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/8876.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/8876.aspx</trackback:ping>
        </item>
        <item>
            <title>A day in the life of a developer...</title>
            <link>http://geekswithblogs.net/aguest/archive/2004/05/07/4708.aspx</link>
            <description>&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Have you ever had one of those days where you sat down at your computer, reviewing the &amp;#8220;latest&amp;#8221; requirements specification only to find out that something that was supposed to be finished now has major rework?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Well that was my day today.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The original requirement was just to have some contacts added from different departments to an application for the purposes of correspondence via automated email/tasks etc. It now turns out that they need to authenticate on our internal network so they can enter data - but they aren't on our network. So now I have to write an authentication system - which means a new database (roles, accounts, memberships), new webservices for authentication and administration and web front-ends to these tools complete with role enforcement.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Man, I just wanted to add some contacts into a database.&lt;/FONT&gt;&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=4708"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=4708" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/4708.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2004/05/07/4708.aspx</guid>
            <pubDate>Fri, 07 May 2004 09:52:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/4708.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2004/05/07/4708.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/4708.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/4708.aspx</trackback:ping>
        </item>
        <item>
            <title>Event problems with controls with no ViewState.</title>
            <category>Coding with C#</category>
            <link>http://geekswithblogs.net/aguest/archive/2004/04/26/4374.aspx</link>
            <description>&lt;P&gt;&lt;FONT face=Verdana&gt;&lt;FONT face=Verdana&gt;&lt;FONT size=3&gt;&lt;FONT color=#000080 size=2&gt;&lt;STRONG&gt;DataGrid, ViewState and SelectedIndex&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The ViewState of an ASP.NET page is a hidden field that the&amp;nbsp;ASP.NET framework uses to maintain the state of a web page. When a user posts a page to the server, the server will restore the contents of the controls by parsing out the state and restoring the state in the Base64 encoded field. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;If you've worked with the DataGrid you know it has a tendency to increase the contents of the ViewState field by quite a bit - sometimes in excess of 100KB! To combat this, a variety of methods are employed - from overriding the Page.SavePagetoPersistenceMedium and Page.LoadPageFromPersistenceMedium and serializing it to Session state to the most obvious - setting the EnableViewState property to false. Saving the view state to Session can have scalability issues, but for web sites with minimal traffic this may be an option. The better solution IMHO is to remove disable the ViewState for the DataGrid by setting the EnableViewState property to false. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;A couple of additional issues rear their heads when you do this however. For starters, you must rebind your data to the Grid on every postback instead of the traditional (!isPostBack) check. You can cache this data yourself in the Page.Cache object to mitigate the database hit issue so that is no problem. As well, you will find out that the SelectedIndex property is now one post behind. This is due to the Page Life Cycle, whereby the SelectedIndexChanged event fires after the Load event. The SelectedIndex property is set correctly but it doesn't get set until after you bind. The solution is to &lt;EM&gt;rebind in the OnPreRender event instead&lt;/EM&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;By setting the EnableViewState to false on my pages, I've reduced the size of the Request and Response by over 60% with no loss of funtionality.&lt;/FONT&gt;&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=4374"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=4374" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/4374.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2004/04/26/4374.aspx</guid>
            <pubDate>Mon, 26 Apr 2004 15:57:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/4374.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2004/04/26/4374.aspx#feedback</comments>
            <slash:comments>5</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/4374.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/4374.aspx</trackback:ping>
        </item>
        <item>
            <title>Javascript function naming from Server Controls</title>
            <category>Coding with C#</category>
            <link>http://geekswithblogs.net/aguest/archive/2004/04/22/4217.aspx</link>
            <description>&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Ever have client side code generated out of your User Controls? You aren't protected by &lt;FONT color=#0000ff&gt;INamingContainer&lt;/FONT&gt; in your Javascript functions - here's a simple approach to handle this issue.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://geekswithblogs.net/aguest/articles/4213.aspx"&gt;&lt;FONT face=Verdana size=2&gt;http://geekswithblogs.net/aguest/articles/4213.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=4217"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=4217" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/4217.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2004/04/22/4217.aspx</guid>
            <pubDate>Thu, 22 Apr 2004 16:24:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/4217.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2004/04/22/4217.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/4217.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/4217.aspx</trackback:ping>
        </item>
        <item>
            <title>First Post</title>
            <link>http://geekswithblogs.net/aguest/archive/2004/04/22/4212.aspx</link>
            <description>&lt;P&gt;&lt;FONT face=Verdana&gt;&lt;STRONG&gt;&lt;FONT size=5&gt;&lt;FONT size=4&gt;Hidi-Ho!&lt;/FONT&gt;&lt;BR&gt;&lt;/FONT&gt;
&lt;HR id=null&gt;
&lt;/STRONG&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This&amp;nbsp;is my first post to my Web Blog and I would like to discuss my ongoing experience with .NET development - specifically ASP.NET using C#. I would like to put out topics or coding practices out to the .NET Geeks of the world to comment on or to critique or to flame.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;STRONG&gt;A little about me&lt;/STRONG&gt;&lt;BR&gt;
&lt;HR id=null&gt;
&lt;/FONT&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;My name is Allen Guest and I'm a displaced Canadian living in the Seattle area. I came down here during the .com bubble and have thankfully been busy despite the .com bomb and the economic downturn. Perhaps it has to do with my experience as I've been coding since I was 12 years old - now 23 years ago with my first love - a Commodore Vic20. With a whopping 3584 bytes of memory and a ~1Mhz processor it was my tool to rule the world. &lt;GRIN&gt;I wanted to write computer games back then - and still today have a love of great computer games and their amazing ability to entertain. I have an appreciation of the Art of programming and now marvel and the technical ability and production ability to truly write games. Yes, I said Art.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Due to circumstances, my career deviated from my love of games and in college got my first taste of &amp;#8220;work&amp;#8221; as a programmer writing data acquisition and analysis systems for oil and gas using C, Pascal and x86 Assembler. The Web started gaining popularity in the early 90's and then I migrated to writing web enabled applications - and finally web applications. In the last year or so, I've settled on my current tool of choice C# for writing applications on Windows platforms.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;I want to share my day-to-day experiences with it - including my gripes - in developing applications. I hope that other &amp;#8220;Geeks&amp;#8221; will read and contribute their thoughts and experiences. I've learned so much from self experimentation and the self experimentation of others that have shared. I hope you do too.&lt;/FONT&gt;&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=4212"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=4212" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/aguest/aggbug/4212.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Allen Guest</dc:creator>
            <guid>http://geekswithblogs.net/aguest/archive/2004/04/22/4212.aspx</guid>
            <pubDate>Thu, 22 Apr 2004 11:05:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/aguest/comments/4212.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/aguest/archive/2004/04/22/4212.aspx#feedback</comments>
            <slash:comments>5</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/aguest/comments/commentRss/4212.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/aguest/services/trackbacks/4212.aspx</trackback:ping>
        </item>
    </channel>
</rss>