<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-12285413</id><updated>2011-11-27T16:35:58.800-08:00</updated><category term='Personal'/><category term='WebServices'/><category term='Vista'/><category term='Voice Recognition'/><category term='XBox 360'/><category term='Microsoft'/><category term='IIS 7'/><category term='Architecture'/><category term='XSD'/><category term='Hosting Companies'/><category term='weight loss'/><category term='Regular Expressions'/><category term='BizTalk'/><category term='User Groups'/><category term='SQL 2005'/><category term='VB.NET'/><category term='ASPX'/><category term='Politics'/><category term='Visual Studio 2008'/><category term='Web Tech'/><category term='Geek Talk'/><category term='Beta'/><category term='XHTML'/><category term='DNN'/><category term='Sonicwall'/><category term='IE7'/><category term='XBox'/><category term='Providers'/><category term='Joke'/><category term='XSLT'/><category term='CSS'/><category term='Asp.Net'/><category term='Reporting Service'/><category term='California'/><category term='XML'/><category term='C#'/><category term='WIFI'/><category term='Game Dev'/><category term='iPhone'/><category term='WCF'/><category term='SQL 2000'/><category term='Linq'/><category term='DotNetNuke'/><category term='Partial Security'/><category term='IE8'/><category term='Driving'/><category term='HTML'/><category term='Tools'/><category term='Internet Explorer'/><category term='Rant'/><category term='JavaScript'/><category term='Training'/><category term='WPF'/><category term='Blog'/><category term='DHCP'/><category term='.NET'/><title type='text'>Code Extreme... My fascination with .NET and Web applications</title><subtitle type='html'>Here you will find my notes, comments, rants, unrelated topics. Be warned: I am non-PC, and post some off topic stuff. (non-PC does not mean Mac.) [Spelling &amp; grammer corrections always come at later dates.]</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://brianscodeextreme.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default?start-index=101&amp;max-results=100'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>131</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-12285413.post-8496447383823776095</id><published>2008-12-15T14:49:00.000-08:00</published><updated>2008-12-15T14:53:12.225-08:00</updated><title type='text'>Going on haitas for a while.</title><content type='html'>I cannot say why, but i am going on haitas for a while.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-8496447383823776095?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=8496447383823776095' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8496447383823776095'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8496447383823776095'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2008/12/going-on-haitas-for-while.html' title='Going on haitas for a while.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-1912410070802512870</id><published>2008-06-19T22:22:00.000-07:00</published><updated>2008-10-11T23:34:33.369-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Tech'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='CSS'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><title type='text'>What is the easiest way to detect an iPhone?</title><content type='html'>Request.UserAgent.Contains("iPhone") returns true if the client is using their iPhone.&lt;br /&gt;&lt;br /&gt;First time I saw that, I had a few hundred lightbulbs pop on over my head. It was blinding.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Dev Notes:&lt;/strong&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Use "px" for font size. &lt;/li&gt;&lt;li&gt;"div" and any block element has a smaller font size than non-block elements.&lt;br /&gt;I suspect that this size issue is a bug, that will be corrected.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-1912410070802512870?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=1912410070802512870' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/1912410070802512870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/1912410070802512870'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2008/06/what-is-easiest-way-to-detect-iphone.html' title='What is the easiest way to detect an iPhone?'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-4683277096057425215</id><published>2008-06-11T00:52:00.000-07:00</published><updated>2008-06-11T00:55:30.185-07:00</updated><title type='text'>June OCDOTNET UG meeting</title><content type='html'>&lt;a href="http://cid-adde37ac346ca820.skydrive.live.com/self.aspx/Public/2008JuneLinqPresentation.zip"&gt;http://cid-adde37ac346ca820.skydrive.live.com/self.aspx/Public/2008JuneLinqPresentation.zip&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;comments coming later.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-4683277096057425215?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=4683277096057425215' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4683277096057425215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4683277096057425215'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2008/06/june-ocdotnet-ug-meeting.html' title='June OCDOTNET UG meeting'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-7818999911291523331</id><published>2008-05-17T03:48:00.000-07:00</published><updated>2008-05-17T03:58:31.885-07:00</updated><title type='text'>XNA Studio 3 CPT</title><content type='html'>So far good news, and all the documentation that you expect to be normally missing is missing.  Doesn't matter, you can do this without any extra documentation. Just use the information for PC and XBox game development.&lt;br /&gt;&lt;br /&gt;The two big pieces of news:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The new XNA studio supports Visual Studio 2008.&lt;/li&gt;&lt;li&gt;There is Zune game developement included.&lt;/li&gt;&lt;/ul&gt;No real documentation for Zune loaded, so here is what I found:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Controller pad is treated as the left thumb stick. Large zero surface. Code accordingly.&lt;/li&gt;&lt;li&gt;Aspect ratio is 0.75; Expected and normal.&lt;/li&gt;&lt;li&gt;Height: 320px &amp;amp; Width:240px. Nice but not awesome.&lt;/li&gt;&lt;li&gt;Min Depth: 0 &amp;amp; Max Depth: 1. Also normal.&lt;/li&gt;&lt;li&gt;WiFi: Peer-to-Peer only. Adaption of mesh, I suspect.&lt;/li&gt;&lt;/ul&gt;If you know how to do sprite games for PC or XBox 360 using XNA studio, then you are ready to develop for Zune.&lt;br /&gt;&lt;br /&gt;I will post video of my first round exploration soon.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-7818999911291523331?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=7818999911291523331' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7818999911291523331'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7818999911291523331'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2008/05/xna-studio-3-cpt.html' title='XNA Studio 3 CPT'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-707268778551767123</id><published>2008-03-28T19:38:00.000-07:00</published><updated>2008-03-31T15:55:20.791-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><title type='text'>Almost forgot about RDBMSX news</title><content type='html'>For those who don't know, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;RDBMSX&lt;/span&gt; is the name I gave to a hobby project that I am working on. It is effectively an XML based DB system, with indexes and query language.&lt;br /&gt;&lt;br /&gt;The key parts are:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;All &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_1"&gt;unencrypted&lt;/span&gt; files are stored in XML format.&lt;/li&gt;&lt;li&gt;The DB engine would be &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;packageable&lt;/span&gt; and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;deployable&lt;/span&gt; with your web application.&lt;/li&gt;&lt;li&gt;Query language would be &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;xpath&lt;/span&gt; (2.0)&lt;/li&gt;&lt;li&gt;Unlimited deployment licensing (&lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_5"&gt;Open Source&lt;/span&gt; project)&lt;/li&gt;&lt;li&gt;Connection to the engine would be through XML call to a listener on a port, or through a custom &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;DataProvider&lt;/span&gt; (System.IO.RDBMSX &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Namespace&lt;/span&gt;)&lt;/li&gt;&lt;li&gt;The server itself would be &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;extenable&lt;/span&gt; through it's &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;namespace&lt;/span&gt; &lt;ul&gt;&lt;li&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;RDBMSX&lt;/span&gt;.Core (All base classes)&lt;/li&gt;&lt;li&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;RDBMSX&lt;/span&gt;.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;PlugIn&lt;/span&gt; (Write your own data direct communication)&lt;/li&gt;&lt;li&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;RDBMSX&lt;/span&gt;.Client (A sample client that you can do all administration from.)&lt;/li&gt;&lt;li&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;RDBMSX&lt;/span&gt;.Server (Common server components)&lt;/li&gt;&lt;li&gt;RDBMSX.Server.Host (Standalone server)&lt;/li&gt;&lt;li&gt;RDBMSX.Server.Host.StateManager (State Manager for &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;IIS&lt;/span&gt;)&lt;/li&gt;&lt;li&gt;RDBMSX.Server.IIS (&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;IIS&lt;/span&gt; Hosted Server)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;/ul&gt;&lt;p&gt;Though I am detailing this quite a bit, this is still a hobby, and such may be years before I release anything.&lt;/p&gt;&lt;p&gt;I think all of us power developers need &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_17"&gt;hobby&lt;/span&gt; projects.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-707268778551767123?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=707268778551767123' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/707268778551767123'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/707268778551767123'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2008/03/almost-forgot-about-rdbmsx-news.html' title='Almost forgot about RDBMSX news'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-2947890567270602137</id><published>2008-03-28T19:11:00.000-07:00</published><updated>2008-03-31T15:56:23.541-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='IE8'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet Explorer'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='IIS 7'/><category scheme='http://www.blogger.com/atom/ns#' term='Hosting Companies'/><category scheme='http://www.blogger.com/atom/ns#' term='CSS'/><category scheme='http://www.blogger.com/atom/ns#' term='Providers'/><category scheme='http://www.blogger.com/atom/ns#' term='User Groups'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><title type='text'>Will be posting again soon.</title><content type='html'>I own several domains that I use to build and test technology against.&lt;br /&gt;My hub for some of this is RPGAmerica.com.&lt;br /&gt;As a temporary solution and a test to see how efficient it is to use static XML as a datasource, I used a pre-existing opensource web application from CodePlex (CodePlex Rocks).&lt;br /&gt;&lt;br /&gt;The XML data source is a solid B+.&lt;br /&gt;Under any volume though, it lags way too much.&lt;br /&gt;&lt;br /&gt;My next attempt will be CPT of ASP.NET MVC. (Oh yeah, I expect to have to do a bunch of recoding everytime I do a release, after they post a release.&lt;br /&gt;&lt;br /&gt;Expect several blog posts on what I find.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;2nd note: Rant&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;DiscountASP is not realy a discount. But, they do seem to be one of the most stable companies. So I will put them at an A.&lt;br /&gt;&lt;br /&gt;I was with WebSecureStores.com for the longest time, they actually were cheaper for what I needed than DiscountASP, but they kept monkeying with the provided service, and ticked me off. When I fired them, they offered to restore the features that they took away from me, but it was too late.&lt;br /&gt;&lt;br /&gt;Brinkster is an unknown to me. They rocked when they started and all was ASP.NET 1.0, but they started sucking quickly by the time they got to .NET 1.1. When I fired them, it was like, "ok, what ever you want." Oh yeah, they wanted to keep their customers.&lt;br /&gt;&lt;br /&gt;NetworkSolutions got fired when my web apps could not run on their servers, because I needed to write to the file system. They lied about my access, so I fired them.&lt;br /&gt;&lt;br /&gt;There are other companies, but I do not want this to become a bitch site. :)&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;3rd Note: Cool Tech Note&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;The latest Safari for Windows is lightning fast, but still seems buggy to me. I have not put my finger on all of the issues.&lt;br /&gt;&lt;br /&gt;The top issue seems to be that it renders fonts with size defined as pt the same way it does px.&lt;br /&gt;pt is about 33% larger than px. So to minimize my cross browser support, I now just define all fonts as px.&lt;br /&gt;&lt;br /&gt;If you are worried about supporting Konquorer, run against Safari, they render off of the same KHTML library.&lt;br /&gt;&lt;br /&gt;Also, if it looks right on Safari, it will probably look right on the iPhone. (I like my iPhone.)&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;4th Note: New Tech Note&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;If your ASP.NET application fails to work on Win2k8 but works fine on Win2k3, look at your config file or run "%systemroot%\system32\inetsrv\APPCMD.EXE". This command line tool will modify your config file to run on IIS7.&lt;br /&gt;&lt;br /&gt;Rick Strahl had an article on this back from June 2006. Still valid today.&lt;br /&gt;&lt;a href="http://www.americanparanoia.com/WebLog/posts/6075.aspx"&gt;http://www.americanparanoia.com/WebLog/posts/6075.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Last Note: Announcements&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;I have no speaker engagements lined up for the rest of the year. If you want me to present something, give me a shout.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-2947890567270602137?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=2947890567270602137' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2947890567270602137'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2947890567270602137'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2008/03/will-be-posting-again-soon.html' title='Will be posting again soon.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-2421622718531193891</id><published>2008-03-05T14:47:00.000-08:00</published><updated>2008-03-05T14:55:03.811-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IE8'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet Explorer'/><category scheme='http://www.blogger.com/atom/ns#' term='Rant'/><category scheme='http://www.blogger.com/atom/ns#' term='IE7'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Again with the Internet Explorer issues</title><content type='html'>Going from IE6 to IE7 breaks a ton of stuff.&lt;br /&gt;Well here we go again, IE7 to IE8 breaks CSS formatting again.&lt;br /&gt;&lt;br /&gt;I just looked at my sites, google maps, and new egg with IE8, and wholy macrel what a mess.&lt;br /&gt;&lt;br /&gt;IE8 Destroyed the functionality of new egg and google maps.&lt;br /&gt;&lt;br /&gt;My sites were majorly messed up, but repairable.&lt;br /&gt;&lt;br /&gt;It looks like IE8 renders the pages closer to how FireFox does than IE7 did.&lt;br /&gt;&lt;br /&gt;I hate to say this, but I am thankful that Apple has released Safari to Windows. KHTML rendering engine seems to be consistant no matter what.&lt;br /&gt;&lt;br /&gt;Here is a bit of wisdom to the MS guys: Stop breaking our sites and making life so expensive in forcing us to re-edit our CSS files with every version.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-2421622718531193891?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=2421622718531193891' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2421622718531193891'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2421622718531193891'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2008/03/again-with-internet-explorer-issues.html' title='Again with the Internet Explorer issues'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-7328543258097088637</id><published>2008-01-23T15:09:00.000-08:00</published><updated>2008-01-23T15:12:16.973-08:00</updated><title type='text'>Getting started in Linq and Linq for SQL PPT File</title><content type='html'>&lt;a href="http://cid-adde37ac346ca820.skydrive.live.com/self.aspx/Public/Introducing_Visual_Studio_2008.ppt"&gt;http://cid-adde37ac346ca820.skydrive.live.com/self.aspx/Public/Introducing_Visual_Studio_2008.ppt&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I will post most of my public files to here:&lt;br /&gt;&lt;iframe style="BORDER-RIGHT: #dde5e9 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: #dde5e9 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 3px; BORDER-LEFT: #dde5e9 1px solid; WIDTH: 240px; PADDING-TOP: 0px; BORDER-BOTTOM: #dde5e9 1px solid; HEIGHT: 66px; BACKGROUND-COLOR: #ffffff" marginwidth="0" marginheight="0" src="http://cid-adde37ac346ca820.skydrive.live.com/embedrowdetail.aspx/Public" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-7328543258097088637?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=7328543258097088637' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7328543258097088637'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7328543258097088637'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2008/01/getting-started-in-linq-and-linq-for.html' title='Getting started in Linq and Linq for SQL PPT File'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-3439262474073966482</id><published>2008-01-18T14:26:00.000-08:00</published><updated>2008-01-18T14:49:23.683-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WPF'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Partial Security'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>Key items for using XBAP to WCF</title><content type='html'>&lt;ol&gt;&lt;li&gt;Get your WCF service running perfectly &lt;strong&gt;&lt;u&gt;before&lt;/u&gt;&lt;/strong&gt; coding against it.&lt;/li&gt;&lt;li&gt;An XBAP component that is running under partial security internet, must be running in the same domain and port number as the WCF service.&lt;/li&gt;&lt;li&gt;Under security tab, in the Application configuration, there is a button marked "Advanced...". Make sure that "Grant the application access to the site of origin" is checked.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;At this point, you can build and deploy your application to your server for testing. Or if you WCF is on the same box as your XBAP, make sure that the host domain match.&lt;br /&gt;In this case localhost is not the same as using your box name.&lt;br /&gt;Make sure that you are either using your box name for both, or localhost for both.&lt;/p&gt;&lt;p&gt;Last key item, this is still for debugging. The default for debugging is that IE comes up with a file path to your XBAP which causes the connection to the service to fail. Here you have a problem with a simple solution.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Again to to your application configuration. Go to Debug.&lt;/li&gt;&lt;li&gt;Change "Start Action" to "Start external program", with the value of "c:\Windows\System32\PresentationHost.exe"&lt;/li&gt;&lt;li&gt;In "Start Options" =&gt; "Command line arguments" enter:&lt;br /&gt;&lt;strong&gt;-debug&lt;/strong&gt; &lt;em&gt;(Physical Path)&lt;/em&gt; &lt;strong&gt;-debugSecurityZoneUrl &lt;/strong&gt;&lt;em&gt;(Domain path)&lt;/em&gt; &lt;/li&gt;&lt;/ol&gt;IE: &lt;strong&gt;-debug&lt;/strong&gt; &lt;em&gt;"c:\Users\ThisUser\Documents\Visual Studio 2008\Project\ThisProject\test.xbap"&lt;/em&gt; &lt;strong&gt;-debugSecurityZoneUrl&lt;/strong&gt; &lt;em&gt;http://www.tempuri.org&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;You may run into other issues, but these are the key ones that were hard for me to find.&lt;br /&gt;&lt;br /&gt;To give credit where credit is due:&lt;br /&gt;&lt;a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2695012&amp;amp;SiteID=1&amp;amp;mode=1"&gt;http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2695012&amp;amp;SiteID=1&amp;amp;mode=1&lt;/a&gt;&lt;br /&gt;Thx to: Matt Galbraith - MSFT &amp;amp; Chango V. - MSFT&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-3439262474073966482?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=3439262474073966482' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3439262474073966482'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3439262474073966482'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2008/01/key-items-for-using-xbap-to-wcf.html' title='Key items for using XBAP to WCF'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-1295324359710119438</id><published>2008-01-11T12:17:00.000-08:00</published><updated>2008-01-11T12:31:40.230-08:00</updated><title type='text'>Last night was fun - reviewing Southbay .NET UG</title><content type='html'>This group is ran very professionally. That is a good starting point.&lt;br /&gt;Everything was timely. Attendance was free. Pizza was abundant. The crowd was lively.&lt;br /&gt;&lt;br /&gt;Downfall: Some reason my gmail account emails got dropped at a rate of 1 out of 3. We do not know if that is from a spam filter or some other issue.&lt;br /&gt;&lt;br /&gt;All in all, I want to forward my gratitude to the board, members, and attendees, for this opportunity I had to present.&lt;br /&gt;&lt;br /&gt;I'll post slides and code shortly here.&lt;br /&gt;I have also given copies to the group for it to be posted to their site.&lt;br /&gt;&lt;br /&gt;Lastly, if you want to have me present at your group, I present up to 4 times a year, on various topics. Email me at &lt;a href="mailto:BrianMinister@gmail.com"&gt;BrianMinister@gmail.com&lt;/a&gt; with your questions or request, and we can see what we can do.&lt;br /&gt;&lt;br /&gt;Some topics:&lt;br /&gt;Getting started in Linq and Linq for SQL&lt;br /&gt;Getting started in WPF&lt;br /&gt;Getting started in Silverlight&lt;br /&gt;Getting started in WCF&lt;br /&gt;Getting started in XML and XPath&lt;br /&gt;Style and Transformation in XML&lt;br /&gt;Active XML - Practical use of XML&lt;br /&gt;&lt;br /&gt;Topics that I am working on for future presentations:&lt;br /&gt;Linq&lt;sup&gt;3&lt;/sup&gt;: PLINQ, BLINQ, XLINQ&lt;br /&gt;Enterprise design for database efficiency&lt;br /&gt;Scaleable by design&lt;br /&gt;UIs that Users actually like&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-1295324359710119438?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=1295324359710119438' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/1295324359710119438'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/1295324359710119438'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2008/01/last-night-was-fun-reviewing-southbay.html' title='Last night was fun - reviewing Southbay .NET UG'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-7386829559386998049</id><published>2007-12-13T18:52:00.000-08:00</published><updated>2008-01-03T14:02:03.489-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='Linq'/><category scheme='http://www.blogger.com/atom/ns#' term='User Groups'/><title type='text'>I am doing a presentation in January</title><content type='html'>I have volunteered to present at &lt;a href="http://www.southbaynet.org/"&gt;http://www.southbaynet.org/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I am still presenting there, but the last time I checked, the presenter and presentation is still listed as TBD. They are working on this.&lt;br /&gt;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;p&gt;Getting started in Linq and Linq for SQL&lt;br /&gt;Some key points will be:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Lambda Expressions explained &lt;/li&gt;&lt;li&gt;Understanding what "Var" really is for C#, and how it differs from Javascript and other languages &lt;/li&gt;&lt;li&gt;Saving time by using SQLMetal &lt;/li&gt;&lt;li&gt;Comparing Linq call using Operators to Method Calls &lt;/li&gt;&lt;li&gt;CRUD in Linq.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;As normal, I will be including commentary and shortcuts on other time saver items.&lt;br /&gt;Expect dry &amp;amp; funny humor.&lt;/p&gt;&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;I will update when I see something else.&lt;br /&gt;&lt;br /&gt;As the former ocdotnet.org and ocvbug.org webmaster, I fully understand being late on posting this info. Hopefully they will have it posted by Monday.&lt;br /&gt;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;This will probably be the last posting before the New Year, So &lt;strong&gt;Happy Hanukkah, Merry Christmas, and Happy New Year&lt;/strong&gt;. I would say Happy Ramadan, but we missed that by a month.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-7386829559386998049?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=7386829559386998049' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7386829559386998049'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7386829559386998049'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/12/i-think-i-am-doing-presentation-in.html' title='I am doing a presentation in January'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-8615185238758052212</id><published>2007-11-19T13:44:00.000-08:00</published><updated>2007-11-19T13:47:05.184-08:00</updated><title type='text'>Brand new and it is already old news</title><content type='html'>VS 2008 is now live, and downloadable to MSDN subscribers.&lt;div&gt;However, since it is published all over the internet that this has happened, this is also old news.&lt;/div&gt;&lt;div&gt;Enjoy my old new news. :)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-8615185238758052212?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=8615185238758052212' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8615185238758052212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8615185238758052212'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/11/brand-new-and-it-is-already-old-news.html' title='Brand new and it is already old news'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-1592511862480587975</id><published>2007-11-08T16:34:00.000-08:00</published><updated>2007-11-08T16:40:15.922-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2008'/><title type='text'>What is new in VS2008 and .NET 3.5</title><content type='html'>Boy is it hard to find these links.&lt;br /&gt;It seems that they are not refrenced well on any search engine, and none of the blogs out there really want to show them.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Visual Studio 2008&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/bb386063(VS.90).aspx"&gt;http://msdn2.microsoft.com/en-us/library/bb386063(VS.90).aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;.NET 3.5&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/bb332048(VS.90).aspx"&gt;http://msdn2.microsoft.com/en-us/library/bb332048(VS.90).aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;.NET 3.5 Compact Framework&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/bb397835(VS.90).aspx"&gt;http://msdn2.microsoft.com/en-us/library/bb397835(VS.90).aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Visual Studio Guided Tour&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/bb514232(VS.90).aspx"&gt;http://msdn2.microsoft.com/en-us/library/bb514232(VS.90).aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Feature Specification for Visual Studio 2008 and .NET Framework 3.5&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/vstudio/products/aa948851.aspx"&gt;http://msdn2.microsoft.com/en-us/vstudio/products/aa948851.aspx&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;BTW: I will be presenting this on November 13th, 2007. Go to &lt;a href="http://www.ocdotnet.org/"&gt;www.ocdotnet.org&lt;/a&gt; for details.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-1592511862480587975?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=1592511862480587975' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/1592511862480587975'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/1592511862480587975'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/11/what-is-new-in-vs2008-and-net-35.html' title='What is new in VS2008 and .NET 3.5'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-4053440979927970607</id><published>2007-11-06T19:53:00.000-08:00</published><updated>2007-11-06T19:59:49.877-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tools'/><category scheme='http://www.blogger.com/atom/ns#' term='Voice Recognition'/><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Vista Voice Recognition is not ready for prime time</title><content type='html'>We may joke about this, but after going through the tutorial, and going live, I can say that the Vista's Voice Recognition is still not ready for live.&lt;br /&gt;My favorite problem with Vista's Voice Rec, is that the commands are not recognised most of the time. Also, I should be able to see the words that have been imprinted, especially the commands, so I can re-record my voice print on them.&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/2Y_Jp6PxsSQ"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/2Y_Jp6PxsSQ" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;Just wait until I play with IBM's Via Voice, now produced by Nuance, the makers of Dragon Naturally Speaking.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-4053440979927970607?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=4053440979927970607' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4053440979927970607'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4053440979927970607'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/11/vista-voice-recognition-is-not-ready.html' title='Vista Voice Recognition is not ready for prime time'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-2331001549473082950</id><published>2007-10-30T11:34:00.000-07:00</published><updated>2007-11-13T10:48:35.041-08:00</updated><title type='text'>Problem that I am having with AJAX mixed with CSS.</title><content type='html'>[SOLVED]&lt;br /&gt;Well the problem wasn't with CSS and AJAX like I thought. Apparently, I had in my code snippet, for AJAX, smart navigation turned on. Now that I figured that out, all I had to do was to turn off smart navigation. Now CSS does not get hosed.&lt;br /&gt;&lt;br /&gt;[ORIGINAL POST]&lt;br /&gt;To see this, you need to click on the image&lt;a href="http://bp3.blogger.com/_9id-sB47F_0/Ryd6FnHMWtI/AAAAAAAAAJc/xnOxcH2A9Ts/s1600-h/CSS_On_AJAX.jpg"&gt; .&lt;br /&gt;&lt;a href="http://bp3.blogger.com/_9id-sB47F_0/Ryd6FnHMWtI/AAAAAAAAAJc/xnOxcH2A9Ts/s1600-h/CSS_On_AJAX.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5127200937601686226" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp3.blogger.com/_9id-sB47F_0/Ryd6FnHMWtI/AAAAAAAAAJc/xnOxcH2A9Ts/s400/CSS_On_AJAX.jpg" border="0" /&gt;&lt;/a&gt;&lt;/a&gt; To see this, you need to click on the image.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-2331001549473082950?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=2331001549473082950' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2331001549473082950'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2331001549473082950'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/10/problem-that-i-am-having-with-ajax.html' title='Problem that I am having with AJAX mixed with CSS.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_9id-sB47F_0/Ryd6FnHMWtI/AAAAAAAAAJc/xnOxcH2A9Ts/s72-c/CSS_On_AJAX.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-7560992016768531674</id><published>2007-10-22T19:26:00.000-07:00</published><updated>2007-10-22T19:39:00.269-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Linq'/><title type='text'>Linq again</title><content type='html'>Here is the solution to my earlier issue.&lt;br /&gt;DLinq queries seem to only execute against a foreach loop.&lt;br /&gt;Now I can be insulting and pointout that forcing a foreach for a single role result is stupid.&lt;br /&gt;&lt;br /&gt;Ok, I may be over simplifying. There are probably other ways to get a single rows.&lt;br /&gt;At least my biggest puzzle is solved. Don't marshal queries, marshal results. Use "var" to contain queries.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-7560992016768531674?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=7560992016768531674' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7560992016768531674'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7560992016768531674'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/10/linq-again.html' title='Linq again'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-7338455154408133925</id><published>2007-10-22T12:42:00.000-07:00</published><updated>2007-10-22T19:26:28.477-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Linq'/><title type='text'>Where I am in my linq investigation</title><content type='html'>The problem is that the anonymous type cannot be used in a method call parameter, and when I use IEnumerable&lt;customer&gt; I lose my field names. I only see my IEnumerable interfaces.&lt;br /&gt;So, how do I get my field names back?&lt;br /&gt;&lt;blockquote&gt;Fijiwalano Shun:&lt;br /&gt;&lt;blockquote&gt;BrianMinister:&lt;br /&gt;I am trying to figure out how to marshal a ling query result and even work with the resultset in general.&lt;br /&gt;I have posted my questions as comments in the code below.&lt;br /&gt;At the moment, I am at a dead standstill on linq until I can get past this.&lt;br /&gt;namespace LinqWoes&lt;br /&gt;{&lt;br /&gt;class Program&lt;br /&gt;{&lt;br /&gt;static void Main(string[] args)&lt;br /&gt;{&lt;br /&gt;NorthwindsDataContext ctx = new NorthwindsDataContext();&lt;br /&gt;var ACustomers = from ac in ctx.Customers&lt;br /&gt;where ac.ContactName.Substring(0, 1) == "A"&lt;br /&gt;select ac;&lt;br /&gt;// ACustomers.? I have lost strong typing by using var.&lt;br /&gt;// Should I use another type when declaring a return from a query?&lt;br /&gt;DoSomethingWithA(ACustomers);&lt;br /&gt;}&lt;br /&gt;//How am I supposed to pass a linq query? This doesn't work.&lt;br /&gt;bool DoSomethingWithA(var ac)&lt;br /&gt;{&lt;br /&gt;//Some code will go here.&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;As a matter of fact, C# is still a strong typed language (linq doesn't break the rule), so please don't mix up the keyword "var" in C# with the one in javascript.&lt;br /&gt;In your case, var ACustomer will generate IL that is absolutely identical to the code: IEnumerable&lt;customer&gt; ACustomer.&lt;br /&gt;&lt;br /&gt;The var keyword just make your life easier and let the compiler to infer from the context what ACustomer really is.&lt;br /&gt;&lt;br /&gt;Scott has wrote a blog to explain this in details, see Understanding the&lt;br /&gt;Var Keyword part of &lt;a href="http://weblogs.asp.net/scottgu/archive/2007/05/15/new-orcas-language-feature-anonymous-types.aspx"&gt;New "Orcas" Language Feature: Anonymous Types&lt;/a&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-7338455154408133925?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=7338455154408133925' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7338455154408133925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7338455154408133925'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/10/where-i-am-in-my-linq-investigation.html' title='Where I am in my linq investigation'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-4974958004975425890</id><published>2007-10-19T16:52:00.000-07:00</published><updated>2007-10-22T19:26:03.696-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Linq'/><title type='text'>More on Linq - a two thumbs down commentary</title><content type='html'>&lt;p&gt;After investing several hours into linq, I have come to the conclusion that DLinq is is waste of time. This is because of: &lt;/p&gt;&lt;ul&gt;&lt;li&gt;documentation is painfully weak. &lt;/li&gt;&lt;li&gt;marshalling data does not provide a clean sepparation of layers. &lt;/li&gt;&lt;li&gt;the linq queries are neither elegent or simple to work with. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Try marshalling a DLinq query and see how far you get with passing an object declared as "var". You are never sure if it is marshalling as an IEnumerable or as an IQueryable. &lt;/p&gt;&lt;p&gt;Try marshal as an instance of the original class. It aint gonna work.&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-4974958004975425890?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=4974958004975425890' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4974958004975425890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4974958004975425890'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/10/more-on-linq-two-thumbs-down-commentary.html' title='More on Linq - a two thumbs down commentary'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-2587495822042830465</id><published>2007-10-02T00:30:00.001-07:00</published><updated>2007-10-02T00:38:08.842-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2008'/><category scheme='http://www.blogger.com/atom/ns#' term='Linq'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Linq: A basic intro</title><content type='html'>&lt;p&gt;Linq is an XML based object driven query and data manipulation language.&lt;/p&gt;&lt;p&gt;The XML part is in two halves. The data structure definition is XML, though you can code it by hand. You can also use XML as a data source.&lt;/p&gt;&lt;p&gt;Object driven comes from the primary language used to build queries is an OO language. In .NET 3.5, this is equally supported for VB.NET and C#.&lt;/p&gt;&lt;p&gt;My next post will break this down some more later.&lt;/p&gt;&lt;p&gt;Consider this a first installment of several posting between now and early to mid November.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-2587495822042830465?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=2587495822042830465' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2587495822042830465'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2587495822042830465'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/10/linq-basic-intro.html' title='Linq: A basic intro'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-4270238787309752362</id><published>2007-10-01T02:19:00.001-07:00</published><updated>2007-10-02T00:37:17.059-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2008'/><category scheme='http://www.blogger.com/atom/ns#' term='User Groups'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>November, I will be presenting Orcas</title><content type='html'>&lt;p&gt;Yes, I know, you will have seen and heard it all.&lt;/p&gt;&lt;p&gt;But I know you like to hear me speak as much as I do.&lt;/p&gt;&lt;p&gt;Ok, maybe you don't.&lt;/p&gt;&lt;p&gt;This is, however, a great opportunity to experience my adventures/miss-adventures of Orcas.&lt;/p&gt;&lt;p&gt;This presentation will be quite a bit of storytelling about how and why I came to several conclusions on several subjects regarding Orcas.&lt;/p&gt;&lt;p&gt;All Code and related links will be posted here, and at the &lt;a href="http://www.ocdotnet.org/"&gt;www.ocdotnet.org&lt;/a&gt; site.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-4270238787309752362?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=4270238787309752362' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4270238787309752362'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4270238787309752362'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/10/november-i-will-be-presenting-orcas.html' title='November, I will be presenting Orcas'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-4516927210162122844</id><published>2007-10-01T02:15:00.001-07:00</published><updated>2007-10-02T00:36:34.383-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='XBox 360'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='XBox'/><category scheme='http://www.blogger.com/atom/ns#' term='Game Dev'/><title type='text'>WoW is out, XBox 360 Dev is in.</title><content type='html'>&lt;p&gt;Seriously. I have been studying up on game dev for modern platforms.&lt;/p&gt;&lt;p&gt;I know that I have not developed a game since the Apple ][+, but things have gotten both easier and harder since then.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Now I can code a game in C#.&lt;/li&gt;&lt;li&gt;Then I had to code everything in Assembly. Compilers were never efficient enough.&lt;/li&gt;&lt;li&gt;Now I have both DirectX and XNA libraries to pull from.&lt;/li&gt;&lt;li&gt;Then I had to figure out how to do scene management.&lt;/li&gt;&lt;li&gt;Now I have a massive online community to pull from.&lt;/li&gt;&lt;li&gt;Then I had me and the Apple fan group at the local collage.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;I think I will start easy, Like a PVP Pong. &lt;/p&gt;&lt;p&gt;Does this mean that I am putting aside my .NET 3.5 and XML stuff?&lt;/p&gt;&lt;p&gt;Heck no! It is because of Silverlight, WCF, WWF, and other new technologies, that got my interest going. I'll explain more later.&lt;/p&gt;&lt;p&gt;I still have a massive love for ASP.NET, just encase you were wondering.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-4516927210162122844?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=4516927210162122844' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4516927210162122844'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4516927210162122844'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/10/wow-is-out-xbox-360-dev-is-in.html' title='WoW is out, XBox 360 Dev is in.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-5151861353056831560</id><published>2007-09-27T11:18:00.001-07:00</published><updated>2007-09-27T11:23:04.682-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2008'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Milestone in this blog</title><content type='html'>A normal milestone would be # of hits. My milestone is the change from Pre-VS2008 to VS2008.&lt;br /&gt;&lt;br /&gt;I will be focusing all of my postings on VS2008 and the .NET 3.5 Framework.&lt;br /&gt;I know that this means that there will be overlap with previous versions, but be assured, that it will be single mindedly focused to 3.5.&lt;br /&gt;&lt;br /&gt;Also I will be presenting Orcas at &lt;a href="http://www.ocdotnet.org/"&gt;ocdotnet.org&lt;/a&gt; meeting in November.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-5151861353056831560?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=5151861353056831560' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5151861353056831560'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5151861353056831560'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/09/milestone-in-this-blog.html' title='Milestone in this blog'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-4738867788685880236</id><published>2007-08-30T22:44:00.000-07:00</published><updated>2007-08-30T22:55:20.806-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='CSS'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>CSS Friendly menus with no 3rd party controls.</title><content type='html'>Drop the following into your page class:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;void BuildMenus(SiteMapNode node)&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;if (node.ChildNodes.Count == 0) return;&lt;br /&gt;Response.Write("&amp;lt;ul&amp;gt;");&lt;br /&gt;foreach (SiteMapNode child in node.ChildNodes)&lt;br /&gt;{&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;Response.Write("&amp;lt;li&amp;gt;");&lt;br /&gt;if (child.Url.Length &amp;gt; 0) Response.Write(string.Format("&amp;lt;a href=\"{0}\"&amp;gt;", child.Url));&lt;br /&gt;Response.Write(" ");&lt;br /&gt;Response.Write(child.Title);&lt;br /&gt;if (child.Url.Length &amp;gt; 0) Response.Write("&amp;lt;/a&amp;gt;");&lt;br /&gt;BuildMenus(child);&lt;br /&gt;Response.Write("&amp;lt;/li&amp;gt;");&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;}&lt;br /&gt;Response.Write("&amp;lt;/ul&amp;gt;");&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Then call this from your page with the following:&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&amp;lt;div id="masterMenu"&amp;gt;&lt;br /&gt;&amp;lt;%BuildMenus(SiteMap.RootNode); %&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Note the outside div.&lt;br /&gt;&lt;br /&gt;Now comes the fun. Add the following to your CSS.&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;#masterMenu ul, #masterMenu ul ul&lt;br /&gt;{&lt;br /&gt;  border: none;&lt;br /&gt;  background-color:#225faa; /*#004E99;*/&lt;br /&gt;  padding-left: 0px;&lt;br /&gt;  cursor: default;&lt;br /&gt;  display:inline-block;&lt;br /&gt;}&lt;br /&gt;#masterMenu ul li&lt;br /&gt;{&lt;br /&gt;  width: auto; &lt;br /&gt;  list-style-type: none;&lt;br /&gt;  position: relative;&lt;br /&gt;  color: #fff;&lt;br /&gt;  float: left;&lt;br /&gt;  display: inline-block;&lt;br /&gt;  padding:0 4px 0 4px;&lt;br /&gt;}&lt;br /&gt;#masterMenu ul li &gt; ul&lt;br /&gt;{&lt;br /&gt;  display: none;&lt;br /&gt;  position: absolute;&lt;br /&gt;  top: 16px;&lt;br /&gt;  left: -40px;&lt;br /&gt;  width:150px;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;#masterMenu ul li &gt; ul li&lt;br /&gt;{&lt;br /&gt;  width:142px;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;#masterMenu ul li:hover&lt;br /&gt;{&lt;br /&gt;  background-color: #FFFF99; &lt;br /&gt;  color: #000; &lt;br /&gt;}&lt;br /&gt;#masterMenu ul li:hover &gt; ul&lt;br /&gt;{&lt;br /&gt;  display: block; &lt;br /&gt;}&lt;br /&gt;#masterMenu ul li a&lt;br /&gt;{&lt;br /&gt;  color: #fff;&lt;br /&gt;  display: block;&lt;br /&gt;  width: 100%;&lt;br /&gt;  text-decoration: none;&lt;br /&gt;}&lt;br /&gt;#masterMenu ul li a:hover&lt;br /&gt;{&lt;br /&gt;  color: #000;&lt;br /&gt;  width:auto;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;#masterMenu ul li:hover &gt; a&lt;br /&gt;{&lt;br /&gt;  color: #000;&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Now, aren't you glad you can just cut and paste from me? Sure you are.&lt;br /&gt;&lt;br /&gt;Good luck&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-4738867788685880236?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=4738867788685880236' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4738867788685880236'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4738867788685880236'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/08/css-friendly-menus-with-no-3rd-party.html' title='CSS Friendly menus with no 3rd party controls.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-6974225670582596321</id><published>2007-08-30T11:26:00.000-07:00</published><updated>2007-08-30T11:32:24.772-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='CSS'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>CSS with a ~</title><content type='html'>One issue of trying to use "~" in your CSS, is the fact that you cannot use [if IE 6] with it.&lt;br /&gt;The problem becomes that the "&amp;lt;!--" becomes a comment.&lt;br /&gt;So below is the .NET fix for this.&lt;br /&gt;&lt;br /&gt;  &amp;lt;%&lt;br /&gt;    string browser = Page.Request.Browser.Browser;&lt;br /&gt;    string version = Page.Request.Browser.Version;&lt;br /&gt;    version = string.Format("{0}.{1}", version.Split('.'));&lt;br /&gt;    decimal verInt = Convert.ToDecimal(version);&lt;br /&gt;    if ((browser == "IE") &amp;&amp; (verInt &lt; 7.0m)) lnkSSIE6.Visible = true;&lt;br /&gt;    if ((browser == "IE") &amp;&amp; (verInt &gt;= 7.0m)) lnkSSIE7.Visible = true;&lt;br /&gt;  %&amp;gt;&lt;br /&gt;  &amp;lt;!--if IE 6.X--&amp;gt;&lt;br /&gt;  &amp;lt;link id="lnkSSIE6" rel="stylesheet" type="text/css" href="~/css/css_ie6/ct_styles_ie6.css"&lt;br /&gt;    runat="server" visible="false" /&amp;gt;&lt;br /&gt;  &amp;lt;!--if IE 7.X--&amp;gt;&lt;br /&gt;  &amp;lt;link id="lnkSSIE7" rel="stylesheet" type="text/css" href="~/css/css_ie7/ct_styles_ie7.css"&lt;br /&gt;    runat="server" visible="false" /&amp;gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-6974225670582596321?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=6974225670582596321' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/6974225670582596321'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/6974225670582596321'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/08/css-with.html' title='CSS with a ~'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-5204471754850960779</id><published>2007-08-28T17:17:00.000-07:00</published><updated>2007-08-28T17:36:46.033-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2008'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><category scheme='http://www.blogger.com/atom/ns#' term='IIS 7'/><category scheme='http://www.blogger.com/atom/ns#' term='ASPX'/><category scheme='http://www.blogger.com/atom/ns#' term='Beta'/><title type='text'>There is a Gotcha when usingVS2008 on Vista and IIS7</title><content type='html'>&lt;p&gt;The following is republished from &lt;a href="http://download.microsoft.com/download/d/d/1/dd18043a-fe86-4f57-ac22-791b30e6f04b/ExpressReadme.htm#Visual%20Web%20Developer%20Express%20Edition"&gt;HERE&lt;/a&gt;&lt;/p&gt;&lt;p&gt;2.3.5.2 Strong name validation failed error when launching IIS project on Windows Vista&lt;br /&gt;When a Web project is run on Windows Vista, it may fail to start and the following error may be shown: "Unable to start debugging on the web server. Strong name validation failed. Click Help for more information." &lt;/p&gt;&lt;p&gt;To resolve this issue:&lt;br /&gt;Disable strong name validation for a Visual Studio file (iisresolver.dll) by doing the following: &lt;/p&gt;&lt;ol&gt;&lt;li&gt;Click on Start, All Programs, Accessories, Command Prompt, and then select Run as administrator&lt;/li&gt;&lt;li&gt;You may see the screen grey and a 'User Account Control' dialog box appear. If this happens, click Continue so that the command prompt starts. &lt;/li&gt;&lt;li&gt;Obtain a copy of sn.exe. Sn.exe installed with Visual Studio 2005, and the .NET Framework 2.0 SDK, and therefore it may already be on the computer. If it is not on the computer, then download .NET Framework 2.0 SDK to obtain it. The x86 version of the Software development kit can be downloaded from &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=FE6F2099-B7B4-4F47-A244-C96D69C35DEC"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=FE6F2099-B7B4-4F47-A244-C96D69C35DEC&lt;/a&gt;. The x64 version of the SDK can be downloaded from &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=1AEF6FCE-6E06-4B66-AFE4-9AAD3C835D3D"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=1AEF6FCE-6E06-4B66-AFE4-9AAD3C835D3D&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;Run one of the following commands, as appropriate:&lt;br /&gt;32-bit computer:"&lt;path_to_sn&gt;\sn.exe" -Vr "%ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE\iisresolver.dll"&lt;br /&gt;64-bit computer:"&lt;path_to_sn&gt;\sn.exe" -Vr "%ProgramFiles(x86)%\Microsoft Visual Studio 9.0\Common7\IDE\iisresolver.dll" &lt;/li&gt;&lt;li&gt;REBOOT when you are finished.&lt;br /&gt;Just exiting VS or restarting IIS does not seem to be enough.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;This assumes that Visual Studio was installed to the default location. If Visual Studio was installed to a custom location, then '%ProgramFiles%\Microsoft Visual Studio 9.0' should be replaced with the path where Visual Studio was installed.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-5204471754850960779?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://download.microsoft.com/download/d/d/1/dd18043a-fe86-4f57-ac22-791b30e6f04b/ExpressReadme.htm#Visual%20Web%20Developer%20Express%20Edition' title='There is a Gotcha when usingVS2008 on Vista and IIS7'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=5204471754850960779' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5204471754850960779'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5204471754850960779'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/08/there-is-gotcha-when-usingvs2008-on.html' title='There is a Gotcha when usingVS2008 on Vista and IIS7'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-921867591345551973</id><published>2007-08-14T20:31:00.000-07:00</published><updated>2007-08-14T20:35:33.416-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>speed testing my connection through my cell again</title><content type='html'>I have updated to the latest of Motorola Phone Tools (released in April)&lt;br /&gt;And I untethered my phone from the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;USB&lt;/span&gt; wire, and am now using the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;bluetooth&lt;/span&gt; connection.&lt;br /&gt;&lt;br /&gt;Here is the results&lt;br /&gt;&lt;a href="http://www.speedtest.net/"&gt;&lt;img src="http://www.speedtest.net/result/170768637.png" /&gt;&lt;/a&gt;&lt;br /&gt;This is much better result.&lt;br /&gt;&lt;br /&gt;Bad news: After using my phone for 1 hr 45 &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;mins&lt;/span&gt;, I had to reboot my phone by pulling the battery.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-921867591345551973?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=921867591345551973' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/921867591345551973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/921867591345551973'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/08/speed-testing-my-connection-through-my.html' title='speed testing my connection through my cell again'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-8859936592444834616</id><published>2007-07-30T18:13:00.000-07:00</published><updated>2007-07-30T18:16:01.880-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Beta'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Microsoft Pre-release Software Visual Studio 2008 Beta 2 Professional Edition</title><content type='html'>In case you are confused as to what version is what, here's a quick, simple rundown: Visual Studio 2008 (aka 'Orcas', aka version 9.0) contains C# version 3.0 and VB.NET version 9.0. These run on version 3.0 of the CLR and will target version 3.5 of the .NET Framework. Visual Studio 2008 will also allow you to target the 2.0 version of the CLR and 3.0 of the framework (which runs on 2.0 of the CLR, not 3.0 of the CLR).&lt;br /&gt;&lt;br /&gt;Remember that this is beta software (regardless of what Marketing may say) so download, install and use at your own risk.&lt;br /&gt;&lt;br /&gt;NEWS SOURCE: CodeProject.com&lt;br /&gt;&lt;br /&gt;LINK:&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=B98A61BA-99B0-40B7-AB6E-5386A2B94217&amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=B98A61BA-99B0-40B7-AB6E-5386A2B94217&amp;amp;displaylang=en&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-8859936592444834616?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=8859936592444834616' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8859936592444834616'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8859936592444834616'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/microsoft-pre-release-software-visual.html' title='Microsoft Pre-release Software Visual Studio 2008 Beta 2 Professional Edition'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-155357642927029280</id><published>2007-07-23T12:45:00.000-07:00</published><updated>2007-07-23T12:46:47.089-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASPX'/><title type='text'>All of MS's providers in ASP.NET 2.0 source code in one place.</title><content type='html'>&lt;a href="http://download.microsoft.com/download/a/b/3/ab3c284b-dc9a-473d-b7e3-33bacfcc8e98/ProviderToolkitSamples.msi"&gt;http://download.microsoft.com/download/a/b/3/ab3c284b-dc9a-473d-b7e3-33bacfcc8e98/ProviderToolkitSamples.msi&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-155357642927029280?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=155357642927029280' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/155357642927029280'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/155357642927029280'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/all-of-mss-providers-in-aspnet-20.html' title='All of MS&apos;s providers in ASP.NET 2.0 source code in one place.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-3836467277854700977</id><published>2007-07-18T14:38:00.000-07:00</published><updated>2007-07-18T14:54:54.742-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XHTML'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Tech'/><category scheme='http://www.blogger.com/atom/ns#' term='CSS'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><title type='text'>What should go into those pesky "alt" attributes?</title><content type='html'>Since the launch of HTML 3.0 we have been seeing this IMG tag attribute called ALT. Now with XHTML, it is a manditory field. However bad information is constantly being put into it.&lt;br /&gt;&lt;br /&gt;The alt field is there for ADA and search engines. Having an image of your logo, and company name, but the attribute only says "logo" is a waste of time. If your company name is that logo, then you need to use &lt;strong&gt;alt="My Company, LLC"&lt;/strong&gt;, or what ever your company name is.&lt;br /&gt;&lt;br /&gt;I have a friend that sends out newsletters that are 100% images. his alts read "1x1", "1x2", etc. Now that is a waste of good marketing info. The alt needs to be a solid description of what the picture is describing.&lt;br /&gt;&lt;br /&gt;The image is about a radio broadcast for a band. It has all of the details of the band, the radio station, and the timeslots. So the alt should read: &lt;strong&gt;alt="GreatBandOFire live on XM Radio, Friday nights, 7pm. Join us."&lt;/strong&gt; Now that is a useful alt.&lt;br /&gt;&lt;br /&gt;This is what finally brought me into looking at the mis-use of alts. A company that shal remain nameless, 4 years ago decided to go to xhtml. Yes, they were an early adopter for a lot of new stuff. But they also wanted their site to be visually savy. So they made all of the static content out of bitmaps. Including some animated gifs.&lt;br /&gt;&lt;br /&gt;Not bad I thought, until I ran a text parser, common tool for search engines, and it could not find their company name, or contact information on the site.&lt;br /&gt;&lt;br /&gt;Well, a simple change of adding the proper alts solved that.&lt;br /&gt;&lt;br /&gt;So, should you put useful information into every alt? No. Some images have no valid alternate text. for those, just use and empty alt attribute: &lt;strong&gt;alt=""&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;I hope this helps you in puting out browser and search engine friendlier websites.&lt;br /&gt;&lt;br /&gt;Please note, this applies for HTML emails and RSS feeds too.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-3836467277854700977?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=3836467277854700977' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3836467277854700977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3836467277854700977'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/what-should-go-into-those-pesky-alt.html' title='What should go into those pesky &quot;alt&quot; attributes?'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-3644227781357662712</id><published>2007-07-17T17:47:00.000-07:00</published><updated>2007-07-17T18:01:57.001-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VB.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='ASPX'/><category scheme='http://www.blogger.com/atom/ns#' term='Providers'/><category scheme='http://www.blogger.com/atom/ns#' term='Reporting Service'/><title type='text'>Time for some more good links.</title><content type='html'>These are mostly MSDN, but they cover some of the most common questions that I get:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Making custom renderer for reporting service&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/msdnmag/issues/05/02/CustomRenderers/default.aspx"&gt;http://msdn.microsoft.com/msdnmag/issues/05/02/CustomRenderers/default.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Single Sign-on MSDN style&lt;br /&gt;&lt;a href="http://weblogs.asp.net/hernandl/archive/2004/06/09/ssoformsauth.aspx"&gt;http://weblogs.asp.net/hernandl/archive/2004/06/09/ssoformsauth.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Signle Sign-on Vasalek style&lt;br /&gt;&lt;a href="http://www.codeproject.com/aspnet/aspnetsinglesignon.asp"&gt;http://www.codeproject.com/aspnet/aspnetsinglesignon.asp&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Sitemap Provider&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/En-US/library/aa479033.aspx"&gt;http://msdn2.microsoft.com/En-US/library/aa479033.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Another MSDN sitemap provider article&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa479320.aspx"&gt;http://msdn2.microsoft.com/en-us/library/aa479320.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Membership Providers&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa479031.aspx"&gt;http://msdn2.microsoft.com/en-us/library/aa479031.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Customizing your Membership Provider&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa479046.aspx"&gt;http://msdn2.microsoft.com/en-us/library/aa479046.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Role Providers&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa479032.aspx"&gt;http://msdn2.microsoft.com/en-us/library/aa479032.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Profile Provider&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa479035.aspx"&gt;http://msdn2.microsoft.com/en-us/library/aa479035.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Custom provider services. Includes some of the links above.&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa479038.aspx"&gt;http://msdn2.microsoft.com/en-us/library/aa479038.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Custom Page state persister&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa479403.aspx"&gt;http://msdn2.microsoft.com/en-us/library/aa479403.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;User less code to secure your app&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa479008.aspx"&gt;http://msdn2.microsoft.com/en-us/library/aa479008.aspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Anti-Cross site scripting lib&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa973813.aspx"&gt;http://msdn2.microsoft.com/en-us/library/aa973813.aspx&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-3644227781357662712?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=3644227781357662712' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3644227781357662712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3644227781357662712'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/time-for-some-more-good-links.html' title='Time for some more good links.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-682360469235984017</id><published>2007-07-13T14:39:00.000-07:00</published><updated>2007-07-13T14:53:07.566-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><category scheme='http://www.blogger.com/atom/ns#' term='CSS'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>"But using CSS only does not give me enough flexibility..."</title><content type='html'>Ya right!! If you believe that, then you do not know CSS.&lt;br /&gt;CSS 2.0 has introduces a whole mariad of features to give you more control.&lt;br /&gt;&lt;br /&gt;Just picking your node to effect is more powerfull. The following is right from the w3c site.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;* - Matches any element. &lt;/li&gt;&lt;li&gt;E - Matches any E element (i.e., an element of type E). &lt;/li&gt;&lt;li&gt;E F - Matches any F element that is a descendant of an E element. &lt;/li&gt;&lt;li&gt;E &gt; F  - Matches any F element that is a child of an element E. &lt;/li&gt;&lt;li&gt;E:first-child - Matches element E when E is the first child of its parent. &lt;/li&gt;&lt;li&gt;E:link, E:visited - Matches element E if E is the source anchor of a hyperlink of which the target is not yet visited - (:link) or already visited (:visited). &lt;/li&gt;&lt;li&gt;E:active, E:hover, E:focus - Matches E during certain user actions. &lt;/li&gt;&lt;li&gt;E:lang(c) - Matches element of type E if it is in (human) language c (the document language specifies how language is determined).&lt;br /&gt;E + F - Matches any F element immediately preceded by an element E. &lt;/li&gt;&lt;li&gt;E[foo] - Matches any E element with the "foo" attribute set (whatever the value).&lt;br /&gt;E[foo="warning"] - Matches any E element whose "foo" attribute value is exactly equal to "warning". &lt;/li&gt;&lt;li&gt;E[foo~="warning"] - Matches any E element whose "foo" attribute value is a list of space-separated values, one of which is exactly equal to "warning".&lt;br /&gt;E[lang="en"] - Matches any E element whose "lang" attribute has a hyphen-separated list of values beginning (from the left) with "en". &lt;/li&gt;&lt;li&gt;DIV.warning - HTML only. The same as DIV[class~="warning"]. &lt;/li&gt;&lt;li&gt;E#myid - Matches any E element ID equal to "myid". &lt;/li&gt;&lt;/ul&gt;"But I have to do all that extra typing since each item is diffrent..."&lt;br /&gt;If you missed the fact that you can select more than one node from the above list, you can also group common aspects of a collection of nodes into a single CSS entry. There by reducing your typing.&lt;br /&gt;&lt;br /&gt;Just go here: &lt;a href="http://www.w3.org/TR/REC-CSS2/cascade.html"&gt;http://www.w3.org/TR/REC-CSS2/cascade.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;"Why should I go through this if my content never changes?"&lt;br /&gt;Simple, browsers do. What works on your site today, may not work on your site tomorrow.&lt;br /&gt;Switching from IE 6 to 7 broke several sites. Some IT heads were scrambling to play catch up, so their sites would remain useful.&lt;br /&gt;&lt;br /&gt;Also, a good CSS means you can use it on several pages, keeping your site looking consistant.&lt;br /&gt;&lt;br /&gt;I'll post more on this later, but I hope I have given you a good starting point.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-682360469235984017?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=682360469235984017' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/682360469235984017'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/682360469235984017'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/but-using-css-only-does-not-give-me.html' title='&quot;But using CSS only does not give me enough flexibility...&quot;'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-2181378217629151669</id><published>2007-07-09T18:33:00.000-07:00</published><updated>2007-07-09T18:41:10.717-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><category scheme='http://www.blogger.com/atom/ns#' term='ASPX'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><category scheme='http://www.blogger.com/atom/ns#' term='Blog'/><title type='text'>Another Mouse Trap - Blog Engines</title><content type='html'>Do you realy want to create your own blog engine?&lt;div&gt;Bah! Get some code from someone else, and improve on it.&lt;/div&gt;&lt;div&gt;Here are a couple of good ones that I like.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Subtext (Based on the now defunked .Text)&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.subtextproject.com/"&gt;http://www.subtextproject.com/&lt;/a&gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thinkjot&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.process64.com/thinkjot/"&gt;http://www.process64.com/thinkjot/&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now go out there and make some money.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-2181378217629151669?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=2181378217629151669' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2181378217629151669'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2181378217629151669'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/another-mouse-trap-blog-engines.html' title='Another Mouse Trap - Blog Engines'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-2487541578199167505</id><published>2007-07-09T17:40:00.000-07:00</published><updated>2007-07-09T18:40:32.215-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Oh the woes of VSS</title><content type='html'>Lets assume that you are on a project that is not budgeted to use anything better than VSS (Visual Source Safe). For starters I realy do feel sorry for you. No one should have to go through that.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A few things to note from experience. Think of this as the poor mans best practices for VSS.&lt;/div&gt;&lt;div&gt;&lt;ol id=""&gt;&lt;li&gt;Multi client, you should use a diffrent instance per client. Failing that use a diffrent folder (Project) per client, failing that... find another company to work with.&lt;/li&gt;&lt;li&gt;No matter if you are working for one client or multiple, each project, and sub project, gets its own folder (project). If your employer fights you on this... find another company to work with.&lt;/li&gt;&lt;li&gt;If you have noticed, ultimatums are pretty liberal with this. This is mostly because I REALY hate VSS.&lt;/li&gt;&lt;li&gt;Common files between projects, images, documents, DB notes, etc, get their own project folder. (You do not need to create a VS project, just a VSS folder (which is called a project)&lt;/li&gt;&lt;li&gt;Do not share login info. (Accountability is lost)&lt;/li&gt;&lt;li&gt;Do not recycle login info. (Nothing makes my day brighter than to have someone blame me for something that preceeded me.)&lt;/li&gt;&lt;li&gt;Run the VSS analyser often. Nothing says good morning better than signing into VSS and finding that the whole VSS DB is corrupt and nothing checked in is accessable.&lt;/li&gt;&lt;li&gt;Back up frequently. Same reason as #7.&lt;/li&gt;&lt;li&gt;Make sure you have an exorcist on a 724 plan, just for those un-explainable emergencies.&lt;/li&gt;&lt;li&gt;With all of the better source control apps out there, why are you still using VSS. If nothing else, use subversion.&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;As you might guess, I wrote this while doing a rebuild of my VSS files.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-2487541578199167505?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=2487541578199167505' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2487541578199167505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2487541578199167505'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/oh-woes-of-vss.html' title='Oh the woes of VSS'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-344049013838233860</id><published>2007-07-05T20:55:00.002-07:00</published><updated>2007-07-05T21:14:24.295-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='Rant'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Human flow &amp; Work flow</title><content type='html'>This last weekend I spent my time at a convetion, being in line after line after line. It got me thinking, As bored as I was in all of those lines, and as much money and time was being waisted on those lines, is there a better way?&lt;br /&gt;&lt;br /&gt;Data is the same way, if you are building up a large queue of data, is there a better way, than to just accumulate it in a stack?&lt;br /&gt;&lt;br /&gt;What is common at conventions? The exhibit hall and live presentation pannels.&lt;br /&gt;&lt;br /&gt;Why not assign tickets to these people, that has a queuing time on it, for them. Then the bulk of the people in the beggining could be out doing things, while the initial line was shrinkin. Towards the end of the line, the bulk of the people could be seated while the remainder are coming in.&lt;br /&gt;&lt;br /&gt;This results in shorter lines and less of a crowd mess.&lt;br /&gt;&lt;br /&gt;The same thing applies to your data. Rather than dumping it into a large queue, keep it in the DB, and pull it out in batches that you are going to process. If you are using connection pools, then you even keep the time to a minimum. SQL 2005 also uses caching, now you have speed.&lt;br /&gt;&lt;br /&gt;Another issue at the convention was to go from the main convention center, where all of the pannels and workshops were, to the exhibit area was clean and easy. But going back was a nightmare. You had to travel a mile for a quarter mile walk.&lt;br /&gt;&lt;br /&gt;The same is with your data. Normally you do not need a queue to send your data from process to process. All it does is keep your data from being approachable when bouncing between processes.&lt;br /&gt;&lt;br /&gt;With the convention, changing the front door, or making one door entrance only, create an exit only, and take the old entrance only door, and make it bidirectional, would have solved the problem. The bulk of the people were there for the exhibit hall, not the other services. Make that access happy and everyone is happy.&lt;br /&gt;&lt;br /&gt;Puting this pattern to data, is simple. One input only process, one output only process, one bi-directional process. The the usecase for the data travelling determine which door to take.&lt;br /&gt;&lt;br /&gt;And that is how an architect/analyst looks at life while on vacation. Some vacation.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-344049013838233860?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=344049013838233860' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/344049013838233860'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/344049013838233860'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/human-flow-work-flow.html' title='Human flow &amp; Work flow'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-5626698152588585610</id><published>2007-07-05T20:46:00.001-07:00</published><updated>2007-07-05T21:13:48.097-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Joke'/><category scheme='http://www.blogger.com/atom/ns#' term='Blog'/><title type='text'>Why have you posted so many entries in one night?</title><content type='html'>I am babysitting a computer upgrade and my brain is in a brain-dump mood. So I thought I would take advantage of that.&lt;br /&gt;&lt;br /&gt;Enjoy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-5626698152588585610?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=5626698152588585610' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5626698152588585610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5626698152588585610'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/why-have-you-posted-so-many-entries-in.html' title='Why have you posted so many entries in one night?'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-8966885038753186191</id><published>2007-07-05T19:55:00.000-07:00</published><updated>2007-07-05T20:52:34.534-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Should I have a log table?</title><content type='html'>This should be asked as "Should I have a _______ table?"&lt;br /&gt;Usually if it involves high volume of &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_0"&gt;traffic&lt;/span&gt; or data, I say yes.&lt;br /&gt;&lt;br /&gt;Some of the most efficient database designs com from tried and true large volume accounting packages. They mix the normalized with the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;de-normalized&lt;/span&gt;. This is done to freeze history, and to reduce the number of &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_2"&gt;look up calls&lt;/span&gt; and joins for reporting.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;"This sounds like you are questioning if I should normalize or not."&lt;br /&gt;&lt;br /&gt;Yes, I am. Some of this comes from the question of normalization.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Here is the pattern. Working data is normalized. &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_3"&gt;Historical&lt;/span&gt; data is not. The reason for this is to keep history from being changed without a record of the change.&lt;br /&gt;&lt;br /&gt;Case 1: The retail merchant.&lt;br /&gt;&lt;blockquote&gt;Customer buys part number 123, which is a red &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_4"&gt;widget&lt;/span&gt;.&lt;br /&gt;&lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_5"&gt;Purchasing&lt;/span&gt; goes in and edits part number 123, because the vendor re-used the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;sku&lt;/span&gt; for a blue &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_7"&gt;widget&lt;/span&gt;.&lt;br /&gt;Customer &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_8"&gt;wants&lt;/span&gt; to return the red &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_9"&gt;widget&lt;/span&gt;, but can't because his record on the computer says he &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_10"&gt;bought&lt;/span&gt; a blue &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_11"&gt;widget&lt;/span&gt;, and he is trying to return a red one.&lt;/blockquote&gt;&lt;br /&gt;This happens more times than you may &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_12"&gt;imagine&lt;/span&gt;. Especially if it was the son/daughter/cousin/&lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_13"&gt;neighbor&lt;/span&gt; of the shop owner who wrote the software. We however are the professionals of this industry. So if you are reading this, then I know YOU have never caused this problem. Actually, yes you have, and so have I, but not to this degree. Many times the customer adopts to the situation and we either never hear about it, or it is put so low on the priority list that it is forgotten.&lt;br /&gt;&lt;br /&gt;Case 2: High volume site keeps getting bogged down when &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_14"&gt;simultaneous&lt;/span&gt; user count &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_15"&gt;exceeds&lt;/span&gt; n.&lt;br /&gt;&lt;blockquote&gt;Who knows or cares what n is. All your customer cares about, is that with all of the optimizations, and the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;webfarm&lt;/span&gt;, the application is still bogging down.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;I am assuming that you have already put in the connection pooling, data/application/form &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_17"&gt;caching&lt;/span&gt;. You are already using the no-locking hint, and you are properly disposing of all of your objects, so that the CG does not need to kick in. (Yes, I know. OOPS, I didn't think of that. Use &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_18"&gt;FXCop&lt;/span&gt;, it will help you fix some of the misses.)&lt;br /&gt;&lt;br /&gt;What is next? Well, look at your &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_19"&gt;SQL&lt;/span&gt; queries. I bet you are waisting a lot of time of those joins, just to run a report, or populate a grid. This is a sign that you need to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_20"&gt;de&lt;/span&gt;-normalize your beautifully sculpted DB design. Not completely though. Be &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_21"&gt;intelligent&lt;/span&gt; in your queries and your reporting, and that should resolve the issue.&lt;br /&gt;&lt;br /&gt;That takes us back to "Do I need a log table?" Yes. Yes you do. But only if there is something to track. Most business applications, except for word processing, there is.&lt;br /&gt;&lt;br /&gt;&lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_22"&gt;OK&lt;/span&gt;, I know that is not completely right. In word processing you need to track the edits, but not in a log table, unless you have to run a report on the details of the edits.&lt;br /&gt;&lt;br /&gt;Let me give you a little known fact about log tables. Did you know that &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_23"&gt;MMORPGs&lt;/span&gt; like World of &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_24"&gt;Warcraft&lt;/span&gt; and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_25"&gt;Star Wars&lt;/span&gt; Galaxies use log files extensively. For them it is auditing for cheaters and to find out what users respond well to compared to what they respond adversely to.&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;"So, what should I log?"&lt;br /&gt;&lt;br /&gt;Logs are history. Record enough data, that if your &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_26"&gt;look up&lt;/span&gt; tables get edited, you do not lose you history.&lt;/p&gt;&lt;p&gt;"But my &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_27"&gt;look up&lt;/span&gt; tables never get deleted or edited? Should I still be concerned about the loss of history?"&lt;/p&gt;&lt;p&gt;You never enter data wrong into a &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_28"&gt;look up&lt;/span&gt;, just to find the problem after you have used it? Are you concerned about reports matching the history after &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_29"&gt;look up&lt;/span&gt; data has been changed? What does your CPA say about this?&lt;/p&gt;&lt;/blockquote&gt;&lt;br /&gt;Also there is a data management issue here. Many companies, that I know, only keep about three or five years of data in their database. If you don't &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_30"&gt;de-normalize&lt;/span&gt;, then you may find yourself in a case where you cannot do a clean &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_31"&gt;wipe&lt;/span&gt; of old data.&lt;br /&gt;&lt;br /&gt;Look at your &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_32"&gt;look up&lt;/span&gt; data. How old are some of the discontinued items? You can speed up your queries be reducing the amount of data that you are filtering through when running a select. Far from common thought practice, where statements in a select to take processing time to manage. What is faster, to query 10,000 items to get 20, or 100 for the same 20? Keep your data small and fast, and you will go far.&lt;br /&gt;&lt;br /&gt;This is also why some programs use a product's &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_33"&gt;sku&lt;/span&gt; as their DB row ID. That way you don't have to store both, one is universal. The downfall is now you need a way to make sure that the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_34"&gt;sku&lt;/span&gt; is truly unique, or that your description between the red widget and blue widget does not cause an inventory or customer service headache.&lt;br /&gt;&lt;br /&gt;You do not want to see as an inventory description "&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_35"&gt;PN&lt;/span&gt; 123, Blue widget, may be a red widget if sold before such and such date."&lt;br /&gt;&lt;blockquote&gt;"So, should I even have normalized data?"&lt;br /&gt;&lt;br /&gt;Yes! That was a stupid question!&lt;br /&gt;&lt;/blockquote&gt;&lt;p&gt;Actually it wasn't. Think of it this way. Non-committed working data, that is &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_36"&gt;subjectable&lt;/span&gt; to change, should be normalized, so that it is always up to date with changes to its parts. &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_37"&gt;Historical&lt;/span&gt; data, should be frozen. So it should be &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_38"&gt;de-normalized&lt;/span&gt; enough to prevent incidental changes.&lt;/p&gt;Yes, I know I keep bouncing between log and other issues, but I hope you can see that they are all interrelated.&lt;br /&gt;&lt;br /&gt;Side note: Some clients will volunteer to pay extra, if you can run &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_39"&gt;meaningful&lt;/span&gt; reports off of those log tables.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-8966885038753186191?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=8966885038753186191' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8966885038753186191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8966885038753186191'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/should-i-have-log-table.html' title='Should I have a log table?'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-591028143439203119</id><published>2007-07-05T19:25:00.000-07:00</published><updated>2007-07-05T19:54:04.882-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Desktop or Web</title><content type='html'>Personally I cannot believe that this is still being treated as a controversial discussion. The answer always boils down to: 1st how is it being used. 2nd, what has the highest ROI.&lt;br /&gt;&lt;br /&gt;Here are my summary questions:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Is it going to be used while the user is not on an internet connection?&lt;/li&gt;&lt;li&gt;Are there large amounts of data that have to move between the client and the server? (Uploading and Downloading data)&lt;/li&gt;&lt;li&gt;Does the data have to be viewed in near real time, real time, per refresh?&lt;/li&gt;&lt;li&gt;How many users?&lt;/li&gt;&lt;li&gt;How often are the updates?&lt;/li&gt;&lt;li&gt;How complex is the installation?&lt;/li&gt;&lt;li&gt;Do you have to interface with another product? Is the interface a simple upload or download?&lt;/li&gt;&lt;li&gt;Is this an interactive edited grid?&lt;/li&gt;&lt;li&gt;What type of security is needed? (Data, Application, User Access)&lt;/li&gt;&lt;li&gt;Is this used within a controled environment or on any user computer? &lt;/li&gt;&lt;li&gt;Is the user's computer going to be a predictable OS, and version?&lt;/li&gt;&lt;li&gt;Is it secured?&lt;/li&gt;&lt;li&gt;Does the user need administrator rights to install?&lt;/li&gt;&lt;li&gt;Is your refrigerator running?&lt;/li&gt;&lt;li&gt;Does data have to go through a firewall?&lt;/li&gt;&lt;li&gt;Are you concerned about other users on that computer?&lt;/li&gt;&lt;li&gt;Are you concerned about security profile being visible outside of your network?&lt;/li&gt;&lt;li&gt;Are you exposing company secrets?&lt;/li&gt;&lt;li&gt;Are you exposing client information?&lt;/li&gt;&lt;li&gt;How many points of encryption are you expecting to work with?&lt;/li&gt;&lt;li&gt;Is your tongue in your shoe?&lt;/li&gt;&lt;li&gt;How responsive do you need your application to be?&lt;/li&gt;&lt;li&gt;Does the user experiance need to be instantanious, or at least notified?&lt;/li&gt;&lt;li&gt;Are you still reading this list?&lt;/li&gt;&lt;li&gt;Can you guarrantee the client has enough drive space, or can add more if needed?&lt;/li&gt;&lt;li&gt;Do you expect the client to install required technology? (.NET, JAVA, SQL, Oracle, etc)&lt;/li&gt;&lt;li&gt;Do you need the client to have a robust video board? (XAML, DirectX, OpenGL)&lt;/li&gt;&lt;li&gt;Do you expect the client to have required memory and CPU?&lt;/li&gt;&lt;li&gt;Do you know what your REAL memory and CPU requirements are?&lt;/li&gt;&lt;li&gt;Do you have the resources to handle technical support due to browser incompatability? Anti-virus compatibility? Other software incompatability?&lt;/li&gt;&lt;li&gt;Can you walk and chew gum at the same time?&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Besides the humor entries, you can see that there is no condition that all projects should either be called webform or winform only. The reality is that an agile developer should be able to handle both. Though, it is not bad to specialize in one or the other.&lt;/p&gt;&lt;p&gt;Please note that this list also applies to framework to work with too. (MFC, Java, .NET, other)&lt;/p&gt;&lt;p&gt;The only thing that is not realy applicable to, is language, where language is not dictated by framework.&lt;/p&gt;&lt;p&gt;The humor entries were strategicly places to keep your mind sharp. Long list can cause drifting. This is another tool to keep you focused on the task.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-591028143439203119?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=591028143439203119' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/591028143439203119'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/591028143439203119'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/desktop-or-web.html' title='Desktop or Web'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-6142730588777898365</id><published>2007-07-05T18:46:00.000-07:00</published><updated>2007-07-05T19:23:30.616-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Tech'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>How to have your application POST to a web page.</title><content type='html'>First thing that I hear is why would I POST rather than GET.&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;Post send the information back on the HTTP POST stream. Get sends the information back on the URL. I can actually mimic a webbrowser's submit with POST. There are plenty of benefits to that, which I will not get into&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Setup:&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Add to your project either System.Web, if you are going to use the HTTPWebRequest and HTTPWebResponse objects. Otherwise add System.Net for the non-HTTP versions of those classes.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Step 1: Declair the post address and request object.&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;string url = "&lt;span style="color:#990000;"&gt;http://some.web.site.com&lt;/span&gt;";&lt;br /&gt;HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);&lt;/span&gt; &lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Step 2: Build your posting data, and encode it.&lt;/p&gt;&lt;blockquote&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;string data = String.Format("&lt;span style="color:#990000;"&gt;someparameter={0}&amp;someotherparameter={1}&lt;/span&gt;",&lt;br /&gt;myParameter, myOtherParameter);&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="color:#009900;"&gt;//myParameter and myOtherParameter are declared somewhere else.&lt;br /&gt;&lt;/span&gt;byte[] buffer = Encoding.UTF8.GetBytes(data);&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;p&gt;Step 3: Using the request declaired earlier, set parameters.&lt;/p&gt;&lt;blockquote&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;string proxy = null; &lt;span style="color:#009900;"&gt;//This line and the proxy property are not needed for local posting.&lt;/span&gt;&lt;br /&gt;req.Method = "&lt;span style="color:#990000;"&gt;POST&lt;/span&gt;";&lt;br /&gt;req.ContentType = "&lt;span style="color:#990000;"&gt;application/x-www-form-urlencoded&lt;/span&gt;";&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#009900;"&gt;//You can try other encodings, but this one I know works.&lt;br /&gt;&lt;/span&gt;req.ContentLength = buffer.Length;&lt;br /&gt;req.Proxy = new&lt;br /&gt;WebProxy(proxy, true); &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#009900;"&gt;// See the proxy not from above.&lt;br /&gt;&lt;/span&gt;req.CookieContainer = new CookieContainer(); &lt;span style="color:#009900;"&gt;// I have found that this is needed more times than not for round trip calls.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;p&gt;Step 4: Send the data.&lt;/p&gt;&lt;blockquote&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;Stream reqs = req.GetRequestStream(); &lt;span style="color:#009900;"&gt;//add form data to request stream&lt;/span&gt;&lt;br /&gt;reqs.Write(buffer, 0, buffer.Length);&lt;br /&gt;reqs.Flush();&lt;br /&gt;reqs.Close(); &lt;span style="color:#009900;"&gt;//at this point, you have sent and closed the transmission.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;p&gt;Step 5: Respond to the server.&lt;/p&gt;&lt;blockquote&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;HttpWebResponse res = (HttpWebResponse)req.GetResponse(); &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="color:#009900;"&gt;//Create a response handler.&lt;br /&gt;&lt;/span&gt;Stream resst = res.GetResponseStream(); &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="color:#009900;"&gt;//Get the response&lt;br /&gt;&lt;/span&gt;StreamReader sr = new StreamReader(resst);&lt;br /&gt;string response = sr.ReadToEnd();&lt;span style="color:#009900;"&gt; //Dump to string&lt;/span&gt;&lt;br /&gt;sr.Close();&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;p&gt;Step 6: Now you can dispose of everything. &lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Do not do this step prematurely.&lt;br /&gt;A lot of these objects are IDisposable.&lt;br /&gt;So call it when you see it.&lt;/p&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-6142730588777898365?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=6142730588777898365' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/6142730588777898365'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/6142730588777898365'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/how-to-have-your-application-post-to.html' title='How to have your application POST to a web page.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-305618323216557021</id><published>2007-07-05T18:31:00.000-07:00</published><updated>2007-07-05T19:22:21.610-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Another round of very Important links, and why.</title><content type='html'>&lt;ol&gt;&lt;li&gt;PowerShell for Windows. &lt;a href="http://www.microsoft.com/windowsserver2003/technologies/management/powershell/default.mspx"&gt;http://www.microsoft.com/windowsserver2003/technologies/management/powershell/default.mspx&lt;/a&gt;&lt;br /&gt;This puts batch to shame.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Microsoft's The Architecture Journal&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/arcjournal/default.aspx"&gt;http://msdn2.microsoft.com/en-us/arcjournal/default.aspx&lt;/a&gt;&lt;br /&gt;Oh come on, do I realy need to explain why you should see this?&lt;br /&gt;Seriously, being a good architect means never stop learning. This is your spot to go.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Skyscrapr (Not a spelling error)&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/skyscrapr/default.aspx"&gt;http://msdn2.microsoft.com/en-us/skyscrapr/default.aspx&lt;/a&gt;&lt;br /&gt;Another architect home page. I visit this weekly.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;HTML Agility Pack&lt;br /&gt;&lt;a href="http://www.codeplex.com/htmlagilitypack"&gt;http://www.codeplex.com/htmlagilitypack&lt;/a&gt;&lt;br /&gt;Need to read non-XML compliant HTML like XML, this is your tool.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;OPEN XML Developers&lt;br /&gt;&lt;a href="http://openxmldeveloper.org/"&gt;http://openxmldeveloper.org/&lt;/a&gt;&lt;br /&gt;Yes, this is another Microsoft site, disguised as an open source site. Don't knock it though. This has some great information on the nature and schemas of the microsoft file format for Office 2007. Also, OPEN XML is not ECMA recognized.&lt;br /&gt;&lt;br /&gt;Side note: The hardcore open source, and open standards people are still knocking MS on this, even though MS made it an open standard. Just proves that you cannot make all of the people happy.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-305618323216557021?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=305618323216557021' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/305618323216557021'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/305618323216557021'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/another-round-of-very-important-links.html' title='Another round of very Important links, and why.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-9177486126395644240</id><published>2007-07-05T18:29:00.000-07:00</published><updated>2007-07-05T18:30:50.046-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='CSS'/><title type='text'>ASP.NET is not CSS Friendly as it should be, but it will be. (revised post)</title><content type='html'>[This is a revised post.]&lt;br /&gt;The problem with the current ASP.NET controls, is the fact that the controls generate everything in the form of grids.&lt;br /&gt;&lt;br /&gt;Solution is not that dramtic.&lt;br /&gt;Check out the latest at &lt;a href="http://www.codeplex.com/cssfriendly"&gt;http://www.codeplex.com/cssfriendly&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This is much better than the original code released from MS late last year.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-9177486126395644240?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=9177486126395644240' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/9177486126395644240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/9177486126395644240'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/12/aspnet-is-not-css-friendly-as-it-should.html' title='ASP.NET is not CSS Friendly as it should be, but it will be. (revised post)'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-1202437831349592717</id><published>2007-07-05T15:31:00.000-07:00</published><updated>2007-07-05T15:36:05.023-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WIFI'/><category scheme='http://www.blogger.com/atom/ns#' term='Sonicwall'/><category scheme='http://www.blogger.com/atom/ns#' term='DHCP'/><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><title type='text'>Getting Vista's wifi to work with Sonicwall's DHCP</title><content type='html'>Vista seems to have a problem with Sonicwall's DHCP.&lt;br /&gt;The problem is in the ARP validation. Sonicwall keeps reporting the validation as a diffrent computer.&lt;br /&gt;&lt;br /&gt;The following steps can be found at: &lt;a href="http://forums.microsoft.com/TechNet/ShowPost.aspx?PostID=1022914&amp;SiteID=17"&gt;http://forums.microsoft.com/TechNet/ShowPost.aspx?PostID=1022914&amp;amp;SiteID=17&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I am reporting them here to keep them from dissapearing:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Click the Start button. &lt;/li&gt;&lt;li&gt;Select All Programs &gt; Accessories. &lt;/li&gt;&lt;li&gt;Right click Command Prompt and click Run as administrator. &lt;/li&gt;&lt;li&gt;Type regedit.exe and press enter. &lt;/li&gt;&lt;li&gt;Go to the following location: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters &lt;/li&gt;&lt;li&gt;Right click this entry and select New Dword. &lt;/li&gt;&lt;li&gt;Rename the new entry ArpRetryCount (leave it set to 0 by default). &lt;/li&gt;&lt;li&gt;Restart the computer. &lt;/li&gt;&lt;li&gt;Reassociate with the SonicWALL. &lt;/li&gt;&lt;/ol&gt;&lt;p&gt;You should notice a successful connection. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-1202437831349592717?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=1202437831349592717' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/1202437831349592717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/1202437831349592717'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/getting-vistas-wifi-to-work-with.html' title='Getting Vista&apos;s wifi to work with Sonicwall&apos;s DHCP'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-3340775305153074010</id><published>2007-07-02T22:31:00.000-07:00</published><updated>2007-07-02T22:44:15.992-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VB.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='Joke'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Someone at MS reads my blogs</title><content type='html'>Not too long ago I posted &lt;a href="http://brianscodeextreme.blogspot.com/2007/06/when-to-use-idisposable.html"&gt;When to use IDisposable&lt;/a&gt; blog entry, so MS has decided release their take on it, but with a lot more words: &lt;a href="http://msdn.microsoft.com/msdnmag/issues/07/07/CLRInsideOut/default.aspx"&gt;CLR Inside Out: Digging into IDisposable&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Maybe they didn't get the idea from my blog. Maybe they had a creative inspiration like I did to help other developers. Maybe my ego is too big for my small computer.&lt;br /&gt;&lt;br /&gt;Well we know my ego is huge, so that last statement goes without saying.&lt;br /&gt;&lt;br /&gt;Enjoy poking fun at yourself. Being too serious about your own character flaws only makes you susceptable to other people's angst.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-3340775305153074010?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=3340775305153074010' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3340775305153074010'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3340775305153074010'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/07/someone-at-ms-reads-my-blogs.html' title='Someone at MS reads my blogs'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-8234367094420768935</id><published>2007-06-27T19:52:00.000-07:00</published><updated>2007-06-27T20:10:11.471-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASPX'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><title type='text'>ASPX receiving a POST from an HTML</title><content type='html'>You have an HTML file that you want it to post to an ASPX file. What do you do?&lt;br /&gt;&lt;br /&gt;1. Simple, make sure that the name attribute is used on the HTML file's tags.&lt;br /&gt;&amp;lt;input id="doSomething" name="DoesNotHaveToBeTheSameNameAsTheID"&amp;gt;&lt;br /&gt;&lt;br /&gt;2. On the HTML file's form tag the "action" attribute must point to your ASPX file that you want to process the request.&lt;br /&gt;&lt;br /&gt;3. Make sure that the "method" attribute is set to post.&lt;br /&gt;3a. If the "method" attribute is set to "get" then the form will send the results in the URL, resulting in the QueryString collection.&lt;br /&gt;&lt;br /&gt;You are basicly done.&lt;br /&gt;&lt;br /&gt;The form that the HTML page is pointing to will get the results, and store the values in the Request.Form property under the HTML element's name attribute.&lt;br /&gt;So using the sample from above, Request.Form["DoesNotHaveToBeTheSameNameAsTheID"] would hold the value entered into the textbox.&lt;br /&gt;&lt;br /&gt;Do I even need the "id" attribute then? If you believe in well formed pages, yes! "id" is a required attribute for xhtml.&lt;br /&gt;&lt;br /&gt;enjoy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-8234367094420768935?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=8234367094420768935' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8234367094420768935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8234367094420768935'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/06/aspx-receiving-post-from-html.html' title='ASPX receiving a POST from an HTML'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-4892767816970410652</id><published>2007-06-22T14:48:00.000-07:00</published><updated>2007-06-27T20:11:25.583-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DotNetNuke'/><category scheme='http://www.blogger.com/atom/ns#' term='DNN'/><title type='text'>Speeding up DNN</title><content type='html'>DNN (DotNetNuke) ships with it's connection string as:&lt;br /&gt;Server=&lt;span style="font-size:85%;"&gt;(Your Server)&lt;/span&gt;;Database=&lt;span style="font-size:85%;"&gt;(Your Database)&lt;/span&gt;;uid=&lt;span style="font-size:85%;"&gt;(SQL Account)&lt;/span&gt;;pwd&lt;span style="font-size:85%;"&gt;=(Password)&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;After filling in the nessesary information for your server, I STRONGLY suggest that you add the following &lt;span style="color:#ff0000;"&gt;red text&lt;/span&gt; to the connection string.&lt;br /&gt;&lt;br /&gt;Server=(Your Server);Database=&lt;span style="font-size:85%;"&gt;(Your Database)&lt;/span&gt;;uid=(SQL Account);pwd=(Password);&lt;br /&gt;&lt;span style="color:#ff0000;"&gt;Min Pool Size=2; Max Pool Size=10;Connect Timeout=15;Pooling=true;Connection Lifetime=0;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In reality, I suggest using connection pools in all of your web and server applications.&lt;br /&gt;&lt;br /&gt;Yes, my pool size is only 10. If you remember to close your connections, 10 connections have been known to support up to 1 million users.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-4892767816970410652?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=4892767816970410652' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4892767816970410652'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4892767816970410652'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/06/speeding-up-dnn.html' title='Speeding up DNN'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-4410455835335119388</id><published>2007-06-15T00:59:00.001-07:00</published><updated>2007-06-27T20:12:05.453-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Another Good Bad Ugly list</title><content type='html'>&lt;ul&gt;&lt;li&gt;Good - writer.live.com&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;This blog tool rocks. Clean integration and spell check.&lt;/p&gt;&lt;p&gt;Much easier to use than the web interface of Blogger. Yes I do like blogger.&lt;/p&gt;&lt;p&gt;This entry was done with Writer.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Bad - Safari for windows&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;This should not have been called beta, it is alpha. Way too many bugs. And the bugs compound on vista.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;ugly - cygwin&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;FYI: Running the Linux environment in a window.&lt;/p&gt;&lt;p&gt;This is a clear case of close but no cigar.&lt;/p&gt;&lt;p&gt;If you can get it to run, it becomes damn near bullet proof. However, if it isn't going to run, stop, clean out, walk away.&lt;/p&gt;&lt;p&gt;If I manage to get cygwin to run, I will report on why I am trying to do this.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-4410455835335119388?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=4410455835335119388' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4410455835335119388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4410455835335119388'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/06/another-good-bad-ugly-list.html' title='Another Good Bad Ugly list'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-3974026677250172749</id><published>2007-06-14T16:39:00.000-07:00</published><updated>2007-07-02T22:43:31.007-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>When to use IDisposable</title><content type='html'>#1 Why?&lt;br /&gt;IDisposable is a reliable, and expected destructor for your code.&lt;br /&gt;It fires off immeadiately when you call it, rather than waiting for the Garbage Collector (GC) to Finalize, or (for C# users) ~myClassName().&lt;br /&gt;&lt;br /&gt;#2 What should I put in it?&lt;br /&gt;Release all of your managed objects, such as Connections, Readers, Streams, Form objects.&lt;br /&gt;&lt;br /&gt;#3 I don't have anything but primitives in my class, do I still need it?&lt;br /&gt;Probably not, as long as you are resetting your primitives on the constructor.&lt;br /&gt;&lt;br /&gt;However, if you put in, as your last line of code, GC.SuppressFinalize(this), then your GC will not waist time with the destructor of your object, after dispose is called. This is very important for server objects, especially web based applications.&lt;br /&gt;&lt;br /&gt;#4 Can I write a Dispose method without using IDisposable?&lt;br /&gt;Yes. However, if you are using a object broker of any kind, it will not recognise this as a disposable object, and Dispose will not get called.&lt;br /&gt;&lt;br /&gt;Object test is "TypeOf IDisposable".&lt;br /&gt;&lt;br /&gt;#5 How do I use it?&lt;br /&gt;&lt;br /&gt;public class SomeClass : &lt;span style="color:#ff0000;"&gt;IDisposable &lt;/span&gt;&lt;br /&gt;{&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;public void SomeClass()&lt;br /&gt;{//Constructor&lt;br /&gt;} &lt;/p&gt;&lt;p&gt;public ~SomeClass()&lt;br /&gt;{//Destructor&lt;br /&gt;} &lt;/p&gt;&lt;p&gt;public void &lt;span style="color:#ff0000;"&gt;Dispose() &lt;/span&gt;&lt;span style="color:#009900;"&gt;//IDisposable.Dispose&lt;br /&gt;&lt;/span&gt;{//IDisposable&lt;br /&gt;        &lt;span style="color:#ff0000;"&gt;&lt;span style="color:#ff0000;"&gt;GC.SuppressFinalize(this); &lt;/span&gt;&lt;span style="color:#009900;"&gt;//A sample of self cleanup&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;} &lt;/p&gt;&lt;/blockquote&gt;}&lt;br /&gt;&lt;br /&gt;Any other questions can be left at the front desk. Have a nice day.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-3974026677250172749?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=3974026677250172749' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3974026677250172749'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3974026677250172749'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/06/when-to-use-idisposable.html' title='When to use IDisposable'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-1216408897777136323</id><published>2007-06-12T19:29:00.000-07:00</published><updated>2007-06-27T20:12:50.904-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Using the Motorola Razr vRxx for internet access with Vista</title><content type='html'>Here are some key points first&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;You must be a subscriber to the data services&lt;/li&gt;&lt;li&gt;You need Motorola Phone Tools(MPT) (4.x)&lt;/li&gt;&lt;li&gt;Do not expect top speed all the time.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;While I was in PADI office, I got 160K Down and 79K Up&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.speedtest.net/"&gt;&lt;img src="http://www.speedtest.net/result/139357982.png" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Install is not staight forward.&lt;/p&gt;&lt;p&gt;Follow these steps:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Install MPT&lt;/li&gt;&lt;li&gt;Go to the Motorola developer's site, register, and download: Handset_USB_Driver_32_v2.7.6.zip&lt;/li&gt;&lt;li&gt;After installation is complete, this may take a while, plug in your phone.&lt;/li&gt;&lt;li&gt;Launch MPT, and choose to use a new profile.&lt;/li&gt;&lt;li&gt;There you have it. By now you should be running.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;What happens if I still cannot connect?&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Make sure you have the right plan.&lt;/li&gt;&lt;li&gt;Make sure your MTP is up to date.&lt;/li&gt;&lt;li&gt;Run the repair on the Handset USB driver&lt;/li&gt;&lt;li&gt;Create a new profile again.&lt;/li&gt;&lt;li&gt;If you cannot get it to work still, call Motorola.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Have fun.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-1216408897777136323?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=1216408897777136323' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/1216408897777136323'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/1216408897777136323'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/06/using-motorola-razr-vrxx-for-internet.html' title='Using the Motorola Razr vRxx for internet access with Vista'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-2655176864578465060</id><published>2007-06-12T12:52:00.000-07:00</published><updated>2007-06-27T20:16:56.441-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='weight loss'/><title type='text'>More on weight loss</title><content type='html'>Nutrisystem gets a thumbs down.&lt;br /&gt;In general they are doing it right.&lt;br /&gt;Follow their guide and the food portions and you will lose weight.&lt;br /&gt;Where they get a thumbs down is in their packaging and preparation.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The small microwavable dishes dance in the microwave and spill. I have lost whole meals to the bottom of my microwave from that.&lt;/li&gt;&lt;li&gt;Following directions exactly, when prepairing some dishes, results in more spillage.&lt;/li&gt;&lt;li&gt;Their Tuna Casserole is gray. Not even a good tasting gray. Just a gray goo.&lt;/li&gt;&lt;li&gt;When they ship the melba toast, 90% of the time it is broken up and smashed.&lt;/li&gt;&lt;li&gt;Several dishes are either way over cooked or way too salty.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Now for the good part.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Like I said before, portions are perfect, IF you stick to the plan.&lt;/li&gt;&lt;li&gt;DO NOT CHEAT and you will lose weight.&lt;/li&gt;&lt;li&gt;You have 3 meals plus a snack and desert. If you get hungry way to fast, like me, break up your meals to smaller meals, and you won't have that problem. I was eating 6 half sized meals, plus the snack and desert.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;What now?&lt;/p&gt;&lt;p&gt;Now that I have left Nutrisystem, I am going to keep up the small portion eating. However, I am not going to use Nutrisystem. I will have to find another supplier. There are some local people who I want to try out. A bit more expensive, but I may just enjoy the results, and not the frustration.&lt;/p&gt;&lt;p&gt;BTW: About 2" off since I had started. I am back down to a 54" waistline. Goal is a 36".&lt;/p&gt;&lt;p&gt;This weekend I will be adding weight lifting onto my plan.&lt;/p&gt;&lt;p&gt;Next post will be back to .NET stuff.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-2655176864578465060?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=2655176864578465060' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2655176864578465060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2655176864578465060'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/06/more-on-weight-loss.html' title='More on weight loss'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-2469629144232014010</id><published>2007-05-28T11:09:00.000-07:00</published><updated>2007-06-27T20:13:27.972-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><title type='text'>Found a great leap point for architecture design.</title><content type='html'>&lt;a href="http://www.oodesign.com/"&gt;http://www.oodesign.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This site has plenty of material, and it is all relevent to good OO design.&lt;br /&gt;&lt;br /&gt;Check it out!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-2469629144232014010?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=2469629144232014010' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2469629144232014010'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2469629144232014010'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/05/found-great-leap-point-for-architecture.html' title='Found a great leap point for architecture design.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-340531549802374724</id><published>2007-05-21T12:29:00.000-07:00</published><updated>2007-06-27T20:17:12.696-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='weight loss'/><title type='text'>Weight loss and surgery</title><content type='html'>Since I cannot bring myself to get my internals cut up and modified, my brain does not accept that as logical, I have gone one other direction.&lt;br /&gt;I have now enrolled with Nutrisystem. Two of my friends have enrolled and are losing weight.&lt;br /&gt;&lt;br /&gt;The downfall that I see, is that this may become a perminant change to my eating habit. Meaning, all of the long term successes that I have seen are from people who have gone on the plan, and purposly never left it.&lt;br /&gt;&lt;br /&gt;I made this decision after I found out that I am one of the few healthy fat people around. Rather than losing the healthy part, I decided to lose the fat part.&lt;br /&gt;&lt;br /&gt;If this failes, then I will have to go the surgical route, fear be damned.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-340531549802374724?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=340531549802374724' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/340531549802374724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/340531549802374724'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/05/weight-loss-and-surgery.html' title='Weight loss and surgery'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-3394742845536813918</id><published>2007-05-15T22:47:00.000-07:00</published><updated>2007-06-27T20:14:07.154-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DotNetNuke'/><category scheme='http://www.blogger.com/atom/ns#' term='Hosting Companies'/><category scheme='http://www.blogger.com/atom/ns#' term='DNN'/><title type='text'>Shared hosting plans &amp; DNN</title><content type='html'>This seems like it should be a single topic, but I am going to treat it like two.&lt;br /&gt;&lt;br /&gt;Every year or two, I have to switch hosting providers, because the one I am current with starts letting me down in ways that I find unacceptable.&lt;br /&gt;&lt;br /&gt;Websecurestores.com&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;Currently I have several sites hosted on Websecurestores.com. This is now a problem, since they nolonger allow direct access to the SQL DB from SQL Manager.&lt;br /&gt;&lt;br /&gt;The only way I can get in, is through their weak web based sql manager, or through my own application on their server. Not going to work.&lt;br /&gt;&lt;br /&gt;If you don't want that route, then they will allow you do backup your DB, download it, then make changes, and upload from your local backup. With that plan, I lose all activity that had accumulated from the backup to the restore.&lt;br /&gt;&lt;br /&gt;Also, don't hit their email server too often from a single IP, they will block you for an hour.&lt;br /&gt;&lt;br /&gt;These guys are now on my thumbs down list.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Brinkster.com&lt;br /&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;I dropped these guys 3 years ago, because they couldn't keep their servers online.&lt;/p&gt;&lt;p&gt;I never went a week without either their hosting down or their email down.&lt;/p&gt;&lt;p&gt;I have not been back since.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Network Solutions&lt;/p&gt;&lt;blockquote&gt;Tried their hosting, did not support DNN at the time. I left.&lt;/blockquote&gt;&lt;p&gt;Interland.com&lt;/p&gt;&lt;blockquote&gt;Great at first, but the issues I was having with reliability, from DNN being taken down from loose configuration issues, was too much for me.&lt;/blockquote&gt;&lt;p&gt;Now lets talk about DNN&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;I like the all in one portal, but I find the program to be bloated, slow, and way to volitile for installation. It is nifty for a content manager though.&lt;/p&gt;&lt;p&gt;I have been working on a static page generator for DNN. This will resolve some of the problems, but not nearly enough of them.&lt;/p&gt;&lt;p&gt;I am also puting my static content generator into it's own portal project. If all goes well, I will publish it to Codeplex.com. (It was webcomic lite. I killed that project, due to architectural considerations.)&lt;/p&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-3394742845536813918?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=3394742845536813918' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3394742845536813918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3394742845536813918'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/05/shared-hosting-plans-dnn.html' title='Shared hosting plans &amp; DNN'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-6289825245671742015</id><published>2007-04-29T18:16:00.000-07:00</published><updated>2007-06-27T21:08:56.339-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Regular Expressions'/><title type='text'>Regular Expressions Tutorial and Cheat sheets</title><content type='html'>Again, why should I write these when other people have beeten me to the puchline.&lt;br /&gt;&lt;br /&gt;Tutorial (PHP leaned)&lt;br /&gt;&lt;a href="http://www.regular-expressions.info/"&gt;http://www.regular-expressions.info/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cheat Sheet (Don't let the blog name fool you.)&lt;br /&gt;&lt;a href="http://www.ilovejackdaniels.com/cheat-sheets/regular-expressions-cheat-sheet/"&gt;http://www.ilovejackdaniels.com/cheat-sheets/regular-expressions-cheat-sheet/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;.NET Based playground&lt;br /&gt;&lt;a href="http://regexlib.com/default.aspx"&gt;http://regexlib.com/default.aspx&lt;/a&gt;&lt;br /&gt;If the download tool starts to fail on you, don't worry, it seems to do that to everyone.&lt;br /&gt;I just use the online tools only.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-6289825245671742015?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=6289825245671742015' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/6289825245671742015'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/6289825245671742015'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/04/regular-expressions-tutorial-and-cheat.html' title='Regular Expressions Tutorial and Cheat sheets'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-2075665469514732757</id><published>2007-04-28T18:06:00.000-07:00</published><updated>2007-04-30T18:14:14.563-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>C# to VB Cheat sheet.</title><content type='html'>I keep telling myself that I am going to write a cheat sheet. Well, there are a ton of them out there. Just pick one or two and run with it.&lt;br /&gt;&lt;br /&gt;Here is one of the most common:&lt;br /&gt;&lt;a href="http://aspalliance.com/625"&gt;http://aspalliance.com/625&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Here are some general .NET cheat sheets:&lt;br /&gt;&lt;a href="http://www.learnvisualstudio.net/content/cheats/"&gt;http://www.learnvisualstudio.net/content/cheats/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This one is casting cheat sheet:&lt;br /&gt;&lt;a href="http://www.codeproject.com/dotnet/CheatSheetCastingNET.asp"&gt;http://www.codeproject.com/dotnet/CheatSheetCastingNET.asp&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-2075665469514732757?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=2075665469514732757' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2075665469514732757'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2075665469514732757'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/04/c-to-vb-cheat-sheet.html' title='C# to VB Cheat sheet.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-113054986885098069</id><published>2007-04-27T18:36:00.000-07:00</published><updated>2007-06-27T21:11:08.806-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL 2000'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Against SQL 2000 &amp; 2005, Here are some select statements that you should never lose</title><content type='html'>I have left this undocumented for long enough.&lt;br /&gt;Below are Views that are visible on Master DB on your SQL Server, however you can call them from within your current DB.&lt;br /&gt;I will explain some of the more useful ones.&lt;br /&gt;&lt;br /&gt;Select * from INFORMATION_SCHEMA.TABLES&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;Provides a list of Tables in your current DB. DB is Catelog. &lt;/p&gt;&lt;p&gt;Table Type distinguishes from table (BASE TABLE) and view (VIEW).&lt;/p&gt;&lt;/blockquote&gt;Select * from INFORMATION_SCHEMA.TABLE_PRIVILEGES&lt;br /&gt;&lt;blockquote&gt;Who granted what privileges to whom, and what type of privilege.&lt;/blockquote&gt;Select * from INFORMATION_SCHEMA.TABLE_CONSTRAINTS&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;If you work with foreign keys, then this is your best spot to query what the constraints are. You can use this for testing queries prior to executing. If you want to avoid handling SQL exceptions, this is what you want to test against.&lt;/p&gt;&lt;/blockquote&gt;Select * from INFORMATION_SCHEMA.KEY_COLUMN_USAGE&lt;br /&gt;&lt;blockquote&gt;Use with TABLE_CONSTRAINTS, for column names on constraints&lt;/blockquote&gt;&lt;br /&gt;Select * from INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE&lt;br /&gt;&lt;blockquote&gt;Pretty much like the constraint views above.&lt;/blockquote&gt;&lt;br /&gt;Select * from INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE&lt;br /&gt;&lt;blockquote&gt;Pretty much like the constraint views above, but with columns.&lt;/blockquote&gt;&lt;br /&gt;Select * from INFORMATION_SCHEMA.VIEWS&lt;br /&gt;&lt;blockquote&gt;You can get the actual SQL statement that the view is made up out of. This is one of those things where I say it's neet, but I have found nothing practical for it.&lt;/blockquote&gt;Select * from INFORMATION_SCHEMA.VIEW_TABLE_USAGE&lt;br /&gt;&lt;blockquote&gt;From here, you can see the view's dependancies. This is one of my favorite features.&lt;/blockquote&gt;Select * from INFORMATION_SCHEMA.VIEW_COLUMN_USAGE&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;This is pretty much the same as above, but it adds the column.&lt;/p&gt;&lt;/blockquote&gt;Select * from INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS&lt;br /&gt;&lt;blockquote&gt;Like above but with the rules. Very useful when testing constraints before committing to DB.&lt;/blockquote&gt;Select * from INFORMATION_SCHEMA.SCHEMATA&lt;br /&gt;&lt;blockquote&gt;Character set schema. I rarely use this.&lt;br /&gt;&lt;/blockquote&gt;&lt;p&gt;Select * from INFORMATION_SCHEMA.ROUTINES &lt;/p&gt;&lt;blockquote&gt;This is a great tool for auditing. It shows stored proceedures, who created them, when they were created, when last altered, and a ton of extra information. Jokingly, I call this my developer's dream query.&lt;/blockquote&gt;&lt;p&gt;Select * from INFORMATION_SCHEMA.PARAMETERS &lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Another great tool. Stored proceedure, parameter mode, ordinal position, parameter name (with the @ symbol), data type, length, precision, scale, and a lot of stuff you usually don't need.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Select * from INFORMATION_SCHEMA.ROUTINE_COLUMNS &lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Contains one row for each column returned by the table-valued functions accessible to the current user in the current database.&lt;br /&gt;The INFORMATION_SCHEMA.ROUTINE_COLUMNS view is based on the sysobjects and syscolumns system tables.&lt;br /&gt;To retrieve information from this view, specify the fully qualified name of INFORMATION_SCHEMA view_name.&lt;/p&gt;&lt;p&gt;Note: This usually yeilds useless information for me. This is more in the category of a very advanced DBA manager.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Select * from INFORMATION_SCHEMA.DOMAINS &lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Contains one row for each &lt;strong&gt;user-defined data type&lt;/strong&gt; accessible to the current&lt;br /&gt;user in the current database. The INFORMATION_SCHEMA.DOMAINS view is based on the spt_data type_info, systypes, syscomments, sysconfigures, and syscharsets system tables.&lt;/p&gt;&lt;p&gt;You can use this as a validation check prior to using or calling a user-defined data type.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Select * from INFORMATION_SCHEMA.DOMAIN_CONSTRAINTS &lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Contains one row for each user-defined data type, accessible to the current user in the current database, with a rule bound to it. The INFORMATION_SCHEMA.DOMAIN_CONSTRAINTS view is based on the sysobjects and systypes system tables. To retrieve information from these views, specify the fully qualified name of INFORMATION_SCHEMA view_name.&lt;/p&gt;&lt;p&gt;Usually this returns an empty set for me. Not enough companies use constraints to protect their data quality.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Select * from INFORMATION_SCHEMA.COLUMN_DOMAIN_USAGE &lt;/p&gt;&lt;blockquote&gt;If the other DOMAIN queries return something, then this is useful. Returns Table Name and Column Name as the primary benefit for the query.&lt;/blockquote&gt;&lt;p&gt;Select * from INFORMATION_SCHEMA.CHECK_CONSTRAINTS &lt;/p&gt;&lt;blockquote&gt;This is a fun one. Use this for your user rights. It returns the constraint name and check clause for your DB.&lt;/blockquote&gt;&lt;p&gt;Select * from INFORMATION_SCHEMA.COLUMNS &lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Table columns, types, sixe, nullable, ect. This is what I use when I am going to write a code generator.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Select * from INFORMATION_SCHEMA.COLUMN_PRIVILEGES &lt;/p&gt;&lt;blockquote&gt;Who has rights to do what. Privilege Type is basicly Refrences, Select, and Update.&lt;/blockquote&gt;&lt;p&gt;On the practical side, this is useful for auditing schema changes and building code generators.&lt;/p&gt;&lt;p&gt;I also find some of these good for pre-comitting checks against constraints for adhock calls against the DB. No, I am not promoting adhock calls to the DB. Do not break good n-Tier application structure. I am just laying out the option.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-113054986885098069?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=113054986885098069' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113054986885098069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113054986885098069'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2005/10/against-sql-2000-here-are-some-select.html' title='Against SQL 2000 &amp; 2005, Here are some select statements that you should never lose'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-1399547092102730005</id><published>2007-04-25T14:25:00.000-07:00</published><updated>2007-04-30T18:00:52.004-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL 2005'/><title type='text'>Using XPath in SQL 2005 with XML namespaces</title><content type='html'>This looks hienous. In reality, it is a bunch of cut and paste code. I suspect that I can shrink this further, but at the moment I think it is useful as it stands.&lt;br /&gt;&lt;br /&gt;When using ".query" from an XML node type, you will need to cast your output to something useable, like a varchar. I try to avoid dbl byle characters in my XML.&lt;br /&gt;&lt;br /&gt;Your default namespace is declared as "declare default element namespace ".&lt;br /&gt;Every other namespace is declared with its prefix, declare namespace act=""".&lt;br /&gt;&lt;br /&gt;Make sure every line of the namespace declaration ends with a ";".&lt;br /&gt;&lt;br /&gt;Data is unquoted, and contains the actual xpath.&lt;br /&gt;&lt;br /&gt;The sample below uses the Adventure Works sample DB.&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;SELECT FirstName + ' ' + LastName as [Name],&lt;br /&gt;&lt;strong&gt;cast (&lt;span style="color:#ff0000;"&gt;AdditionalContactInfo.query&lt;/span&gt;(&lt;span style="color:#ff9900;"&gt;'declare default element namespace&lt;/span&gt;&lt;br /&gt;"&lt;/strong&gt;&lt;a href="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactInfo"&gt;&lt;strong&gt;&lt;span style="color:#000000;"&gt;http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactInfo&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;"&lt;span style="font-size:130%;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;declare namespace act="&lt;/span&gt;&lt;/strong&gt;&lt;a href="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactTypes"&gt;&lt;strong&gt;&lt;span style="color:#000000;"&gt;http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactTypes&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;"&lt;span style="font-size:130%;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#cc33cc;"&gt;data(//AdditionalContactInfo/act:homePostalAddress/act:Street)'&lt;/span&gt;) as varchar(100)) Street,&lt;br /&gt;&lt;/strong&gt;cast (AdditionalContactInfo.query('declare default element namespace&lt;br /&gt;"&lt;a href="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactInfo"&gt;http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactInfo&lt;/a&gt;";&lt;br /&gt;declare namespace act="&lt;a href="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactTypes"&gt;http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactTypes&lt;/a&gt;";&lt;br /&gt;data(//AdditionalContactInfo/act:homePostalAddress/act:City)') as varchar(100)) City,&lt;br /&gt;cast (AdditionalContactInfo.query('declare default element namespace&lt;br /&gt;"&lt;a href="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactInfo"&gt;http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactInfo&lt;/a&gt;";&lt;br /&gt;declare namespace act="&lt;a href="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactTypes"&gt;http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactTypes&lt;/a&gt;";&lt;br /&gt;data(//AdditionalContactInfo/act:homePostalAddress/act:StateProvince)') as varchar(100)) StateProvince,&lt;br /&gt;cast (AdditionalContactInfo.query('declare default element namespace&lt;br /&gt;"&lt;a href="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactInfo"&gt;http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactInfo&lt;/a&gt;";&lt;br /&gt;declare namespace act="&lt;a href="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactTypes"&gt;http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactTypes&lt;/a&gt;";&lt;br /&gt;data(//AdditionalContactInfo/act:homePostalAddress/act:PostalCode)') as varchar(100)) PostalCode,&lt;br /&gt;cast (AdditionalContactInfo.query('declare default element namespace&lt;br /&gt;"&lt;a href="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactInfo"&gt;http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactInfo&lt;/a&gt;";&lt;br /&gt;declare namespace act="&lt;a href="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactTypes"&gt;http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ContactTypes&lt;/a&gt;";&lt;br /&gt;data(//AdditionalContactInfo/act:homePostalAddress/act:CountryRegion)') as varchar(100)) CountryRegion&lt;br /&gt;from Person.Contact&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-1399547092102730005?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=1399547092102730005' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/1399547092102730005'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/1399547092102730005'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/04/using-xpath-in-sql-2005-with-xml.html' title='Using XPath in SQL 2005 with XML namespaces'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-7547464653765918630</id><published>2007-04-20T17:17:00.000-07:00</published><updated>2007-04-27T18:25:02.494-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL 2005'/><title type='text'>I cannot get my SQL 2005 DB to Shrink!!</title><content type='html'>Good chance that you shouldn't try.&lt;br /&gt;Shrinking your DB may lead to it being fragmented and losing performance.&lt;br /&gt;&lt;br /&gt;However, if you have to, and you cannot get the shrink to work, keep reading.&lt;br /&gt;&lt;br /&gt;Lets assume that I have a DB called MyDB, and the log is MyDB_log.&lt;br /&gt;&lt;br /&gt;Run&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;DBCC LOGINFO(MyDB)&lt;/blockquote&gt;Look at the status column.&lt;br /&gt;If there are any entries that are #2, then there is your problem.&lt;br /&gt;&lt;br /&gt;How to fix:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;BACKUP LOG MyDB WITH TRUNCATE_ONLY&lt;br /&gt;GO&lt;br /&gt;DBCC SHRINKDATABASE (MyDB, TRUNCATEONLY)&lt;br /&gt;GO&lt;br /&gt;DBCC SHRINKFILE (MyDB_log, TRUNCATEONLY)&lt;br /&gt;GO &lt;/p&gt;&lt;/blockquote&gt;Run LOGINFO again to see the results.&lt;br /&gt;You will probably be ready to go after this.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-7547464653765918630?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=7547464653765918630' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7547464653765918630'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7547464653765918630'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/04/i-connot-get-my-db-to-shrink.html' title='I cannot get my SQL 2005 DB to Shrink!!'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-7002799125680279317</id><published>2007-04-04T22:24:00.001-07:00</published><updated>2007-04-04T22:35:13.012-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>Master pages and images</title><content type='html'>You have a master page in your application root, however the page that calls it is in a subdirectory, and another one is in the sub-sub-directory.&lt;br /&gt;&lt;br /&gt;Somewhere &amp;lt;img src="images/myimage.jpg" /&amp;gt; is going to break.&lt;br /&gt;&lt;br /&gt;Simple solution&lt;br /&gt;&amp;lt;img id="masterpageuniquetagid" src="" &lt;span style="color:#ff0000;"&gt; runat="server"&lt;/span&gt; src="&lt;span style="color:#ff0000;"&gt;~/&lt;/span&gt;images/myimage.jpg"/&amp;gt;&lt;br /&gt;&lt;br /&gt;Set the image tag to a runat server control. Then you can use the famous tilde to determin application root.&lt;br /&gt;&lt;br /&gt;It is also a good idea to always use a unique id name for all of your runat server controls.&lt;br /&gt;&lt;br /&gt;Remember, as soon as you put runat="server" on a tag, it becomes a HTMLControl rather than just a tag.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-7002799125680279317?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=7002799125680279317' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7002799125680279317'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7002799125680279317'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/04/master-pages-and-images_04.html' title='Master pages and images'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-6675977857158006834</id><published>2007-01-03T18:18:00.000-08:00</published><updated>2007-06-27T20:14:33.980-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='Hosting Companies'/><title type='text'>It is a complete pain to post DBs to a shared plan hosting provider using SQL 2005.</title><content type='html'>But it just got a lot easier.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.codeplex.com/sqlhost/Wiki/View.aspx?title=Database%20Publishing%20Wizard"&gt;http://www.codeplex.com/sqlhost/Wiki/View.aspx?title=Database%20Publishing%20Wizard&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This program converts your DB Structures and Data to SQL statements, ready for you to post.&lt;br /&gt;&lt;br /&gt;Thank you MS SQL Team for giving us a tool like this, a bit late in the game though. This would have been perfect on Day 1!&lt;br /&gt;&lt;br /&gt;Enough rant. It is a good tool.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-6675977857158006834?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=6675977857158006834' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/6675977857158006834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/6675977857158006834'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2007/01/it-is-complete-pain-to-post-dbs-to.html' title='It is a complete pain to post DBs to a shared plan hosting provider using SQL 2005.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-143544465762702340</id><published>2006-12-28T09:56:00.000-08:00</published><updated>2007-06-27T20:15:33.199-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><category scheme='http://www.blogger.com/atom/ns#' term='Blog'/><title type='text'>A small note</title><content type='html'>I hit my 5000 page view today.&lt;br /&gt;&lt;br /&gt;Also I will be posting some of this to the new and upcoming &lt;a href="http://www.harborobjects.com/"&gt;HarborObjects.com&lt;/a&gt; site.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-143544465762702340?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=143544465762702340' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/143544465762702340'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/143544465762702340'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/12/small-note.html' title='A small note'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-6012340597414073609</id><published>2006-12-28T09:35:00.000-08:00</published><updated>2007-04-04T22:35:13.013-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>URL Rewrite for virtual paths</title><content type='html'>Most .NET examples for URL rewriting use HTTPModules or HTTPHandlers rather than actual ISAPI filters. (Yes, there is still a diffrence.)&lt;br /&gt;&lt;br /&gt;The big problem with this is the fact that the URL calls for the rewrites have to trigger a .NET call to the ASP.NET ISAPI filter to even have your HTTPModule or HTTPHandler to be launched.&lt;br /&gt;&lt;br /&gt;That means that your URL file extension needs to be .aspx, .asmx, .asax, .ascx, .ashx, .axd. But what if you want a redirect based on .gif, .swf, .xml? Sorry you are out of luck. But not realy.&lt;br /&gt;&lt;br /&gt;If your rewrite code is generic enough, you can rewrite these too by telling IIS to use the ASP.NET Isapi filter on these files.&lt;br /&gt;&lt;br /&gt;Step by step below:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;From IIS console, go to your application directory and open the properties window.&lt;/li&gt;&lt;li&gt;Go to the "Home Directory" tab&lt;/li&gt;&lt;li&gt;Click on "Configuration" Button&lt;/li&gt;&lt;li&gt;On the "Mappings" tab you will set your Isapi filters.&lt;/li&gt;&lt;li&gt;We will now map SWF to the ASP.NET Isapi filter.&lt;/li&gt;&lt;li&gt;Click Add&lt;/li&gt;&lt;li&gt;Enter "c:\winnt\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll" into the executable path. (This is for the 2.0 framework.)&lt;/li&gt;&lt;li&gt;Type your extension like ".swf". No leading wild cards. Do not forget to put in the leading period before the actual extension.&lt;/li&gt;&lt;li&gt;Leave script engine checked.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Uncheck "Verify if file exists"&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;As a minimum, verb should be get, but with static items, I may put all, and use the rewriter to block writes. Then I can control posting by user rights.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;That is it. It only took me too many hours in one day to discover all of this.&lt;/p&gt;&lt;p&gt;Note: This was ASP.NET 2.0 and IIS 6.0. I have not tried this on the 3.0 framework or on any pre-releases of the IIS 7.0.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-6012340597414073609?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=6012340597414073609' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/6012340597414073609'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/6012340597414073609'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/12/url-rewrite-for-virtual-paths.html' title='URL Rewrite for virtual paths'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-602397633604916618</id><published>2006-12-20T17:34:00.000-08:00</published><updated>2007-06-27T20:15:19.577-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><title type='text'>Happy Holidays</title><content type='html'>Ok, for those of you who are sick of being PC... Merry Christmas and Happy New Year.&lt;br /&gt;&lt;br /&gt;This will be the closest thing we get to a December blog.&lt;br /&gt;&lt;br /&gt;I know that I have been slacking off on my technical stuff. End of year comes with a penalty.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-602397633604916618?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=602397633604916618' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/602397633604916618'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/602397633604916618'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/12/happy-holidays.html' title='Happy Holidays'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-3386350304280217033</id><published>2006-11-10T15:01:00.000-08:00</published><updated>2007-06-27T21:07:47.451-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><category scheme='http://www.blogger.com/atom/ns#' term='Joke'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><category scheme='http://www.blogger.com/atom/ns#' term='Blog'/><title type='text'>If I worked for Microsoft, How would I say that I was going to Starbucks at 3:30?</title><content type='html'>Scoping a projection and actuation of acheiving a Luminescant Intra-firmament Gasious Body Transactual Asset Unit of Measurment, using a bipedal locomotion, forth with at such a time as 3 hourly units of time plus 1 score and 10 of minutely time units.&lt;br /&gt;&lt;br /&gt;And that, simply put, is the Microsoft method of documention of technology.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-3386350304280217033?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=3386350304280217033' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3386350304280217033'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/3386350304280217033'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/11/if-i-worked-for-microsoft-how-would-i.html' title='If I worked for Microsoft, How would I say that I was going to Starbucks at 3:30?'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-878356353882126531</id><published>2006-11-10T13:53:00.000-08:00</published><updated>2007-04-04T22:35:13.014-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>.NET 3.0 is now live!!!</title><content type='html'>The .NET Framework 3.0 has officially been released! &lt;br /&gt;&lt;a href="http://www.netfx3.com/blogs/news_and_announcements/archive/2006/11/06/.NET-Framework-3.0-has-been-released_2100_.aspx"&gt;http://www.netfx3.com/blogs/news_and_announcements/archive/2006/11/06/.NET-Framework-3.0-has-been-released_2100_.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-878356353882126531?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=878356353882126531' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/878356353882126531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/878356353882126531'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/11/net-30-is-now-live.html' title='.NET 3.0 is now live!!!'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-5240838963015476812</id><published>2006-11-03T17:26:00.000-08:00</published><updated>2007-04-04T22:35:13.014-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>Server controls</title><content type='html'>&lt;a href="http://www.eworldui.net/"&gt;http://www.eworldui.net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A collection of .NET server controls that:&lt;br /&gt;&lt;strong&gt;Calendar Popup&lt;br /&gt;&lt;/strong&gt;Allows you to easily create a popup calendar that does not require a postback to the server.&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Collapsable Panel&lt;/strong&gt;&lt;br /&gt;Allows you to easily create a section of content in your web form that can be collapsable.  Support for IE 5+ and Netscape 6+.&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Faq Repeater&lt;br /&gt;&lt;/strong&gt;This new data-bound templated control will allow you to add a Faq style listing of question and answers similar to what is found at &lt;a href="http://www.microsoft.com/"&gt;Microsoft's&lt;/a&gt;Website.&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Masked Textbox&lt;/strong&gt;&lt;br /&gt;Add a masked textbox control where you can define what you want your users to type in.  Javascript support for IE 5+ and Netscape 6+.  Built in RegularExpressionValidator that you can turn on and off, which helps for validation of data.&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Multi-text List Controls&lt;br /&gt;&lt;/strong&gt;These controls extend DropDownList and ListBox, allowing for the developer to add a second data-bound column to the List Item Text.  Also adds new methods for easily selecting list items.&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Numeric Box&lt;/strong&gt;&lt;br /&gt;Allows you to easily add a textbox to your webform and only allow numerical data to be entered.  Javascript support for IE 5+ and Netscape 6+.&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;List Transfer&lt;br /&gt;&lt;/strong&gt;This control extends my Multi-Text List Box control, allowing you to order the List Items by moving them up and down in the control. You also have the ability to move List Items from one Ordred List Box control to the other via PostBack or client side Javascript.&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Time Picker&lt;/strong&gt;&lt;br /&gt;Allows you to easily create a popup time picker for easy selection of times throughout the day.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-5240838963015476812?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=5240838963015476812' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5240838963015476812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5240838963015476812'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/11/server-controls.html' title='Server controls'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-2570519573045918141</id><published>2006-11-02T14:58:00.000-08:00</published><updated>2007-04-04T22:35:13.015-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>The foundation of a chat program</title><content type='html'>&lt;a href="http://www.codeproject.com/aspnet/SimpleChat.asp"&gt;http://www.codeproject.com/aspnet/SimpleChat.asp&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-2570519573045918141?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=2570519573045918141' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2570519573045918141'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/2570519573045918141'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/11/foundation-of-chat-program.html' title='The foundation of a chat program'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-5840308651208114330</id><published>2006-10-30T11:11:00.000-08:00</published><updated>2007-06-27T20:16:36.832-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>figuring out those pesky color values</title><content type='html'>If you are a web developer and have to spend time figuring out those color values for your website, here is a simple tool&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ficml.org/jemimap/style/color/wheel.html"&gt;http://www.ficml.org/jemimap/style/color/wheel.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-5840308651208114330?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=5840308651208114330' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5840308651208114330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5840308651208114330'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/10/figouring-out-those-pesky-colol-values.html' title='figuring out those pesky color values'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-5743143556875808176</id><published>2006-10-16T22:26:00.000-07:00</published><updated>2007-04-04T22:35:13.016-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>Server Monitor</title><content type='html'>&lt;a href="http://www.codeplex.com/Wiki/View.aspx?ProjectName=polymon"&gt;http://www.codeplex.com/Wiki/View.aspx?ProjectName=polymon&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;FYI: This is why I have started working with codeplex over SourceForge.&lt;br /&gt;&lt;br /&gt;I like SF, but codeplex, I think, is much better.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-5743143556875808176?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=5743143556875808176' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5743143556875808176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5743143556875808176'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/10/server-monitor.html' title='Server Monitor'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-5410579639886332200</id><published>2006-10-04T14:52:00.000-07:00</published><updated>2007-04-04T22:35:13.016-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>Tools needed to use .NET 3.0 Beta</title><content type='html'>&lt;a href="http://msdn.microsoft.com/windowsvista/downloads/products/getthebeta/default.aspx"&gt;http://msdn.microsoft.com/windowsvista/downloads/products/getthebeta/default.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Everything is there. Warning you are poluting both Windows and Visual Studio 2005.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-5410579639886332200?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=5410579639886332200' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5410579639886332200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5410579639886332200'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/10/tools-needed-to-use-net-30-beta.html' title='Tools needed to use .NET 3.0 Beta'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-7213298022083471543</id><published>2006-09-27T11:55:00.000-07:00</published><updated>2006-09-27T11:58:04.479-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>Webcomic.NET Lite</title><content type='html'>I have started a new Open Source project, LGPL lic, using the new CodePlex site.&lt;br /&gt;CodePlex is a free online project site implementation of Microsoft Team Foundation Server.&lt;br /&gt;&lt;br /&gt;To see my project go to &lt;a href="http://www.codeplex.com/Wiki/View.aspx?ProjectName=webcomic"&gt;http://www.codeplex.com/Wiki/View.aspx?ProjectName=webcomic&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you are wondering what happened to my Unwiki project, on SourceForge, My account has been reset so many times I gave up on it.&lt;br /&gt;&lt;br /&gt;I will be incorporating my wiki code onto Webcomic.NET Lite.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-7213298022083471543?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=7213298022083471543' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7213298022083471543'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7213298022083471543'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/09/webcomicnet-lite.html' title='Webcomic.NET Lite'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-8166853374383415658</id><published>2006-09-26T17:21:00.000-07:00</published><updated>2007-04-04T22:36:21.683-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='User Groups'/><title type='text'>OCVBUG: Synchronous and Asynchronous Web Services is .NET V2</title><content type='html'>For October we again will be doing another combined OC C# and OCVBUG event. Please note the meeting date, Tuesday October 17 and meeting location at &lt;strong&gt;[Change of venue to be announced]&lt;/strong&gt;. Registration starts at 6:00 pm, Meeting starts at 6:30 pm, Ends by 9:00 pm.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Synchronous and Asynchronous Web Services is .NET V2&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;The advent of Web Services has started a revolution that allows applications to communicate regardless of language or platform. In this session Dan Wahlin will discuss how synchronous and asynchronous calls can be made to Web Services using new features in .NET 2.0. The discussion will explain synchronous and asynchronous pros and cons and show the code necessary to use each technique in .NET applications.&lt;br /&gt;&lt;br /&gt;Dan Wahlin (Microsoft MVP for ASP.NET and XML Web Services) is a .NET development instructor at Interface Technical Training (&lt;a href="http://www.interfacett.com/"&gt;http://www.interfacett.com/&lt;/a&gt;). Dan founded the XML for ASP.NET Developers Web site (&lt;a href="file:///C:/Documents%20and%20Settings/Mikev/Local%20Settings/Temporary%20Internet%20Files/FrontPageTempDir/www.XMLforASP.NET"&gt;file:///C:/Documents%20and%20Settings/Mikev/Local%20Settings/Temporary%20Internet%20Files/FrontPageTempDir/www.XMLforASP.NET&lt;/a&gt;), which focuses on using XML, ADO.NET and Web Services in Microsoft's .NET platform. He's also on the INETA Speaker's Bureau and speaks at several conferences. Dan coauthored ASP.NET: Tips, Tutorials and Code (Sams), ASP.NET 1.1 Insider Solutions, ASP.NET 2.0 MVP Hacks and authored XML for ASP.NET Developers (Sams). When he's not writing code, articles or books, Dan enjoys writing and recording music and playing golf and basketball with his wife and kids.&lt;br /&gt;&lt;br /&gt;This is an INETA event!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-8166853374383415658?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=8166853374383415658' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8166853374383415658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8166853374383415658'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/09/ocvbug-synchronous-and-asynchronous-web.html' title='OCVBUG: Synchronous and Asynchronous Web Services is .NET V2'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-4527744905009571909</id><published>2006-09-25T07:35:00.000-07:00</published><updated>2007-04-04T22:37:04.879-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='User Groups'/><title type='text'>Tech Summit is over</title><content type='html'>The 2nd annual SoCal .NET Tech Summit has wrapped.&lt;br /&gt;&lt;br /&gt;Lots of compliments.&lt;br /&gt;Lots of great presentations.&lt;br /&gt;&lt;br /&gt;Mr Bill Vaughn was the low on my list, since he wouldn't leave his presentation with us.&lt;br /&gt;Rocky Lhotka was the high. He did 2 outstanding presentation.&lt;br /&gt;&lt;br /&gt;Kudos to all of the presenters, volunteers, and hotel staff.&lt;br /&gt;&lt;br /&gt;Thank God its over. Now I can get some billable work in again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-4527744905009571909?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=4527744905009571909' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4527744905009571909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4527744905009571909'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/09/tech-summit-is-over.html' title='Tech Summit is over'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-4544297520654916944</id><published>2006-09-08T10:47:00.000-07:00</published><updated>2007-04-04T22:37:04.880-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='User Groups'/><title type='text'>OCVBUG September Meeting</title><content type='html'>&lt;strong&gt;Conceptual Modeling using ORM2 and NORMA &lt;/strong&gt;&lt;br /&gt;This talk will present arguments in favor of conceptually modeling application domains and will demonstrate the current CTP of NORMA (Neumont ORM Architect), an open source plug-in to Microsoft Visual Studio .NET, that supports the ORM 2 (second generation Object Role Modeling) conceptual modeling notation and how NORMA maps ORM schemas to a variety of implementation targets, including relational DBMSs, object-oriented code, and XML schema.&lt;br /&gt;&lt;br /&gt;John M. Miller is a Software Architect for Protocol Marketing Group where he guides the design and implementation of the Fulfillment Division's line of business applications.  He has also conducted training classes in .NET technologies for Fortune 1000 companies. He is a frequent speaker at conferences and user groups where he presents talks on current issues in software development and software architecture. John is Co-founder of the Southern California Software Architecture Group.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-4544297520654916944?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.ocvbug.org' title='OCVBUG September Meeting'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=4544297520654916944' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4544297520654916944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/4544297520654916944'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/09/ocvbug-september-meeting.html' title='OCVBUG September Meeting'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-115557474643951255</id><published>2006-09-06T09:58:00.000-07:00</published><updated>2007-04-04T22:37:04.880-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='User Groups'/><title type='text'>SoCal .Net Tech Summit. GO!</title><content type='html'>&lt;a href="http://www.socaltechsummit.com/"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.socaltechsummit.com/Portals/1/SCTS_Banner_small.jpg" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-115557474643951255?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=115557474643951255' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/115557474643951255'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/115557474643951255'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/08/blog-post.html' title='SoCal .Net Tech Summit. GO!'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-7080387083787865400</id><published>2006-08-22T19:33:00.000-07:00</published><updated>2007-06-27T20:19:18.548-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rant'/><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><category scheme='http://www.blogger.com/atom/ns#' term='Blog'/><title type='text'>We need a permit system for CA freeways.</title><content type='html'>We need a permit system for CA freeways.&lt;br /&gt;&lt;br /&gt;This morning, on my way to work, I decided to be nice, my first mistake, and let a couple of cars merge in easily from the entrance ramp. Meaning I left them both lots of free space, about 14 to 18 car lengths.&lt;br /&gt;&lt;br /&gt;The first car merged in easily, taking about 4 car lengths to do so. The 2nd blew through all 10 of the remaining car lengths and started to cut me off by merging at my space.&lt;br /&gt;&lt;br /&gt;When you merge, you are to accelerate into the traffic, not cause problems by slowing into traffic.&lt;br /&gt;&lt;br /&gt;This is why I do not believe that everyone should have freeway privileges. Some people are just too stupid to have them.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-7080387083787865400?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=7080387083787865400' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7080387083787865400'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/7080387083787865400'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/08/we-need-permit-system-for-ca-freeways.html' title='We need a permit system for CA freeways.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-8386646262509340977</id><published>2006-08-21T19:52:00.000-07:00</published><updated>2007-06-27T20:20:15.101-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rant'/><category scheme='http://www.blogger.com/atom/ns#' term='Politics'/><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><title type='text'>Good thing that the UN does not fight crime</title><content type='html'>The UN brokered a deal with Lebanon and Israel to create a cease fire.&lt;br /&gt;Rules:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;A DMZ would be formed by an international military between Israel and Lebanon&lt;/li&gt;&lt;li&gt;Part of the rules for the DMZ is the size of the international forces.&lt;/li&gt;&lt;li&gt;Also Hezbollah would disarm&lt;/li&gt;&lt;li&gt;Someone from the DMZ area would provide the mechanism to disarm Hezbollah.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Reality:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;A DMZ is slowly being formed&lt;/li&gt;&lt;li&gt;The # of solders from France are a fraction of what was promised. Now the UN has to scramble to get more.&lt;/li&gt;&lt;li&gt;Nobody is admitting to taking the stance to disarm Hezbollah. &lt;/li&gt;&lt;li&gt;And they are not volunteering.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Next step:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Hezbollah will attack Israel again.&lt;/li&gt;&lt;li&gt;Israel will return the favor again.&lt;/li&gt;&lt;li&gt;If the prime minister does not get some backbone, then the next wave will be devastating to Israel.&lt;/li&gt;&lt;li&gt;If the prime minister does get backbone, then we will see something that looks like the aftermath of WWII.&lt;/li&gt;&lt;li&gt;In reality, fanatics bent on death or killing only understand death.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;I am a fanatic, bent on life, but I am not blind to those who only understand death.&lt;/p&gt;&lt;p&gt;If they turn from their path, and there is hard proof of earnesty, then I welcome them with an olive branch, otherwise, I welcome them with my sword.&lt;/p&gt;&lt;p&gt;True peace in an individual is found in Christ, in a nation, in recognising and ending villainous ways.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-8386646262509340977?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=8386646262509340977' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8386646262509340977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8386646262509340977'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/08/good-thing-that-un-does-not-fight-crime.html' title='Good thing that the UN does not fight crime'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-8438039195304280050</id><published>2006-08-21T19:36:00.000-07:00</published><updated>2007-06-27T20:20:36.840-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><title type='text'>The loss of an old buddy, Ashton.</title><content type='html'>Ashton is not a person, but my favorite cigar. I have not been able to light-up and enjoy a cigar for months. Every time I do, I go into a massive coughing fit, or I feel sick right a way.&lt;br /&gt;&lt;br /&gt;I'm gonna miss my cigar time, but I am enjoying the money I save.Maybe I can find other things to cut out to save even more. Food? Gas?&lt;br /&gt;&lt;br /&gt;Just wait. By the time this war on terror is over, we will be charged by the mile that we walk, just to cover the gas prices.&lt;br /&gt;&lt;br /&gt;I am seriously thinking of getting a used Vespa to drive to work on. (Seriously, no FLCL jokes please.)&lt;br /&gt;&lt;br /&gt;I rambled my way from one conversation right into the next. And it was all with myself.&lt;br /&gt;&lt;br /&gt;How efficient of me to be able to do this by myself. ^_^&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-8438039195304280050?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=8438039195304280050' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8438039195304280050'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8438039195304280050'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/08/loss-of-old-buddy-ashton.html' title='The loss of an old buddy, Ashton.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-8231436414628710256</id><published>2006-08-20T20:02:00.000-07:00</published><updated>2007-06-27T20:21:08.813-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rant'/><category scheme='http://www.blogger.com/atom/ns#' term='Politics'/><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><title type='text'>Ending pyamid schemes</title><content type='html'>What is a pyramid scheme?&lt;br /&gt;&lt;br /&gt;It is a program, where you make money by only selling other people into the pyramid.&lt;br /&gt;&lt;br /&gt;There is no actual product being sold.&lt;br /&gt;&lt;br /&gt;Here is dataentrybank.com. these people are as close to a pyramid as you can get.&lt;br /&gt;&lt;br /&gt;What they sell for $50 you can get for free, and the company that they set you up with also you can get for free. These people are affiliated with Clickbank.com. You may want to avoid that company too.&lt;br /&gt;&lt;br /&gt;So what do you get?&lt;br /&gt;Loss income, and grief. If you read the disclaimer, you will find that the success stories are the minority, not the majority.&lt;br /&gt;&lt;br /&gt;How did you get that information?&lt;br /&gt;&lt;a href="http://blog.siteadvisor.com/2006/08/dont_quit_your_day_job_1.shtml"&gt;http://blog.siteadvisor.com/2006/08/dont_quit_your_day_job_1.shtml&lt;/a&gt;&lt;br /&gt;and&lt;br /&gt;&lt;a href="http://www.better-internet-bureau.org/discus/messages/1/188.html?1152310719"&gt;http://www.better-internet-bureau.org/discus/messages/1/188.html?1152310719&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It is past time for the FTC to shut these companies down.&lt;br /&gt;&lt;br /&gt;The job of the government is to protect the citizens. So why isn't the FTC running a nice big public investigation on these people?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-8231436414628710256?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=8231436414628710256' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8231436414628710256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/8231436414628710256'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/08/ending-pyamid-schemes.html' title='Ending pyamid schemes'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-115404880471012825</id><published>2006-07-27T18:02:00.000-07:00</published><updated>2007-06-27T20:21:40.285-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>REVIEW: Programming Sudoku (Technology in Action) (Paperback)</title><content type='html'>&lt;a href="http://apress.com/ApressCorporate/supplement/1/10111/bcm.gif"&gt;&lt;img style="FLOAT: left; WIDTH: 125px" alt="Programming Sudoku (Technology in Action) (Paperback) " src="http://apress.com/ApressCorporate/supplement/1/10111/bcm.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Programming Sudoku (Technology in Action) (Paperback) by Wei-Meng Lee&lt;br /&gt;&lt;br /&gt;This book teaches more than Sudoku, it covers the process of developing game logic development and intelligence.&lt;br /&gt;&lt;br /&gt;There are two games covered, Sudoku and Kakuro. Only Sudoku is covered as a step by step process on developing a game generator and solver. Kakuro, has enough information that a standard programmer should be able to build a generator and solver.&lt;br /&gt;&lt;br /&gt;The book is both informative and entertaining to read. When I was finished, I was very motivated to build my own variants.&lt;br /&gt;&lt;br /&gt;There is quite a bit of resistance to games built with .Net, specially VB.Net. This book does a great job in showing the power of VB.Net as a competitive platform outside of business development.&lt;br /&gt;&lt;br /&gt;The discussion on puzzle solving can be applied to any development language.&lt;br /&gt;&lt;br /&gt;Where this book has a short coming is that it does not cover other forms of logical puzzle solving. There are plenty of other methods not covered. An appendix of those, what they are, and what the benefits of them are, would have been a nice bonus.&lt;br /&gt;&lt;br /&gt;Over all, I liked this book.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-115404880471012825?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=115404880471012825' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/115404880471012825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/115404880471012825'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/07/review-programming-sudoku-technology.html' title='REVIEW: Programming Sudoku (Technology in Action) (Paperback)'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-115263915459069320</id><published>2006-07-11T10:30:00.000-07:00</published><updated>2007-04-04T22:35:13.018-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>.Net Framework CTP</title><content type='html'>If you have not been to &lt;a href="http://www.netfx3.com/"&gt;http://www.netfx3.com/&lt;/a&gt; go now and get your headstart on .Net 3.0.&lt;br /&gt;&lt;br /&gt;Don't worry about not being caught up on the new features of 2.0, most of us are not caught up yet.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-115263915459069320?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=115263915459069320' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/115263915459069320'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/115263915459069320'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/07/net-framework-ctp.html' title='.Net Framework CTP'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-5998676791301810025</id><published>2006-07-04T20:22:00.000-07:00</published><updated>2007-06-27T20:38:16.960-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Politics'/><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><title type='text'>Many notes on politics</title><content type='html'>&lt;h3 class="post-title"&gt;Memorial Day &lt;span style="font-size:85%;"&gt;(Reposted from one of my dead blogs)&lt;/span&gt;&lt;/h3&gt;&lt;div class="post-body"&gt;Please do not forget that this is not just for hot dogs and BBQ. This is in commemoration&lt;br /&gt;for our heroes who fought and died in the many wars that we have been through.&lt;br /&gt;&lt;br /&gt;It is now whether we won or lost, improved lives or lost them. It is about being&lt;br /&gt;thankful that we have people who are not just able, but willing to put their lives&lt;br /&gt;on the line for our benefit and the benefit of others.&lt;br /&gt;&lt;br /&gt;I want to make sure you take particular attention to that last part: "...and the&lt;br /&gt;benefit of others."&lt;br /&gt;&lt;br /&gt;Did we have to fight in WWII European theater? No. Did we have to fight in WWI?&lt;br /&gt;No.&lt;br /&gt;&lt;br /&gt;Did we need to liberate the Afghanistan people from a tyrannical government? No.&lt;br /&gt;&lt;br /&gt;Are all of the countries perfect now? No. Are they better off than they were? I&lt;br /&gt;have heard enough to say yes.&lt;br /&gt;&lt;br /&gt;This is why we celebrate Memorial Day. To keep in memory that we have paid a great&lt;br /&gt;price for what we have today. Though we pay it again and again, with every war,&lt;br /&gt;we do not pay it without understanding what we loose or what we will never have&lt;br /&gt;back again.&lt;br /&gt;&lt;br /&gt;So to our active and inactive solders, sailors, and marines, thank you. You make&lt;br /&gt;us proud and we cannot give you proper gratitude for that.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;Kyoto Protocol and UN &lt;span style="font-size:85%;"&gt;(Reposted from one of my dead blogs)&lt;/span&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="post-body"&gt;Yes, I would reject "Kyoto Protocol" too.&lt;br /&gt;&lt;br /&gt;The US leads every other country in providing cleaner alternatives to living than&lt;br /&gt;any other developed country.&lt;br /&gt;&lt;br /&gt;My youngest brother just got back from Beijing China after getting a bronchial infection&lt;br /&gt;from being in one of the most polluted places in the world. By the way, China, who&lt;br /&gt;should have been held to the same standards as the US, was most exempt.&lt;br /&gt;&lt;br /&gt;Rather than having other country's standards shoved down our throat, I say we continue&lt;br /&gt;taking the lead. Make it easier for our own companies to come up with cleaner burning&lt;br /&gt;fuels. Endorse and even actively promote green power sources, like wind and solar.&lt;br /&gt;&lt;br /&gt;This isn't to say that we need new laws to do this. We need grants and tax incentives&lt;br /&gt;to do this. How about tax exempt status for all purchases of clean burning and green&lt;br /&gt;fuels for the next 10 years. That will get the ball rolling. And we aren't making&lt;br /&gt;criminals of good people in the process.&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;The other reason I do not like the Kyoto Protocol, is that it taxes us for non-compliance,&lt;br /&gt;in the form of fines. That is simply BS. We are a sovereign nation. We are made&lt;br /&gt;up of FREE people. A tax against our nation is a tax against our people. That is&lt;br /&gt;wrong.&lt;br /&gt;&lt;br /&gt;The UN continually tries to flex it's power over all of it's members. The UN is&lt;br /&gt;a voluntary membership of each nation. It was formed to provide a formal means to&lt;br /&gt;communicate and promote peace. It has become the biggest most inefficient ineffective&lt;br /&gt;travesty of modern history. We need to take the lead and exit it. We have treaties&lt;br /&gt;with our allies, we have embassies in their countries, as they do here. This other&lt;br /&gt;"governing body" makes our federal government look like a harmless child.&lt;br /&gt;&lt;/div&gt;&lt;h3 class="post-title"&gt;Clean burning fuel or profitablility? &lt;span style="font-size:85%;"&gt;(Reposted from one of my dead blogs)&lt;/span&gt;&lt;/h3&gt;&lt;div class="post-body"&gt;Again, I turned to the midwest for practical solutions.&lt;br /&gt;&lt;br /&gt;What I found was Kentucky Clean Fuels Coalition.&lt;br /&gt;&lt;br /&gt;This site has the breakdown on the following alternativc fuels.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Biodesel &lt;/li&gt;&lt;li&gt;Compressed Natural Gas &lt;/li&gt;&lt;li&gt;Ethanol (E10 &amp;amp; E85) &lt;/li&gt;&lt;li&gt;Electric &lt;/li&gt;&lt;li&gt;Hybrid Electric &lt;/li&gt;&lt;li&gt;Idle Reduction &lt;/li&gt;&lt;li&gt;Propane (LPG)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Why did I pick this site? They are approaching alternative fuel as a business option,&lt;br /&gt;not as a taxable or government mandated option. This goes back to my minimalizing&lt;br /&gt;the federal government.&lt;/p&gt;&lt;p&gt;By the way, E85 vehicles are available now, and they only cost a little more than&lt;br /&gt;the non-E85 equivelent. They are manufactured for almost all major makes and models&lt;br /&gt;of vehicles right now.&lt;/p&gt;&lt;p&gt;So with an E85 car, your patrolium use drops to 15% of what it is now, and your&lt;br /&gt;Methenol derivitive fuel increases to 85%.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:7;"&gt;&lt;span style="font-size:100%;"&gt;&lt;strong&gt;Quoted directly from Kentucky Clean Fuels Coalition:&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;An alcohol based liquid fuel, Ethanol is used as an oxygenate in 10 - 15%&lt;br /&gt;form and as a primary fuel in its 85% mixture. It is renewable and made from corn,&lt;br /&gt;sugar cane or carbohydrate feedstock. All vehicles are capable of running on an&lt;br /&gt;ethanol blend below 15%. Vehicles capable of operating on E85 can be purchased from&lt;br /&gt;the auto manufacturers today. These vehicles are "flexible-fuel" vehicles - meaning&lt;br /&gt;they can operate on E85 or gasoline or any mixture of them both.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Bush speech&lt;/span&gt; (Reposted from one of my dead blogs)&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;In reality, there is nothing new here.&lt;br /&gt;&lt;br /&gt;1st issue:&lt;br /&gt;&lt;br /&gt;The use of National Guard is a very diluted attempt to appease the American masses,&lt;br /&gt;I am think it will do just that.&lt;br /&gt;&lt;br /&gt;A better way, is to work with the Minuteman project. They are already planning on&lt;br /&gt;expanding the US fence for the Government. They are already planning on putting&lt;br /&gt;in the surveillance. And they are probably going to have this done more efficiently&lt;br /&gt;than any government agency. No $10,000 hammers here.&lt;br /&gt;&lt;br /&gt;And the Minutemen are already working as a non-law enforcement level agency.&lt;br /&gt;&lt;br /&gt;So rather than wasting more tax money on a &lt;strong&gt;&lt;u&gt;misuse&lt;/u&gt;&lt;/strong&gt; of the military, lets have a government&lt;br /&gt;grant formed to have the Minutemen do the job and get it done.&lt;br /&gt;&lt;br /&gt;2nd Issue:&lt;br /&gt;&lt;br /&gt;This is full amnesty. This is bull. This is insulting to the people that have been&lt;br /&gt;trying and waiting to come into this country legally for years.&lt;br /&gt;&lt;br /&gt;Guest worker pass is H1B and H1A, we do not need another one.&lt;br /&gt;&lt;br /&gt;The solution is to do a massive round up and deport. Sorry I do not believe in driving&lt;br /&gt;people out by attrition. That would only lead to more crime.&lt;br /&gt;&lt;br /&gt;Before someone ask, Mexico is resource strong. Maybe even better than China. Lets&lt;br /&gt;send our highly educated resource and process managers down there to start businesses&lt;br /&gt;and build new job for the people that live there. Mexico has the potential to become&lt;br /&gt;a Jr USA in economic affluency, if they learn how to take advantage of their resources.&lt;br /&gt;&lt;br /&gt;So the real solution is to make Mexico more attractive for Mexicans, and they will&lt;br /&gt;stop coming here.&lt;br /&gt;&lt;br /&gt;Do I want them here? YES, as LEGAL immigrants.&lt;br /&gt;&lt;br /&gt;The other points that bush made are fluff, and just detractions from this.&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;I also want to make one other point quite clear, I do not hate nor am I mad at the&lt;br /&gt;president, I am painfully disappointed with ALL of the federal government and their&lt;br /&gt;disconnect with those of us who have a net work of under $10 million, $1 Million,&lt;br /&gt;$100 Thousand, etc.&lt;br /&gt;&lt;br /&gt;Only 14% of the country has 90% of the wealth. The middle class has all but vanished.&lt;br /&gt;This pattern has to stop.&lt;br /&gt;&lt;br /&gt;The best way to keep the wealthy wealthy is to make it harder and more punishing&lt;br /&gt;for those who are not wealthy to start making wealth.&lt;br /&gt;&lt;br /&gt;I understand that these 14% are the largest individual employers, so I do not believe&lt;br /&gt;in dragging them down either. I want to reward success at all levels, and remove&lt;br /&gt;rewards for failure.&lt;br /&gt;&lt;br /&gt;I believe in safety nets, but I know that charity organizations can do a better&lt;br /&gt;job of doing that than any government agency. There are even published research&lt;br /&gt;that states the the "New Deal" may have prolonged the depression, rather than helped&lt;br /&gt;people through it.&lt;br /&gt;&lt;br /&gt;Lets learn from our mistakes and stop the socialization of America NOW, and free&lt;br /&gt;Americans from government oppression NOW. &lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 class="post-title"&gt;War in the Middle East &lt;span style="font-size:85%;"&gt;(Reposted from one of my dead blogs)&lt;/span&gt;&lt;/h3&gt;&lt;div class="post-body"&gt;1. Cannot leave now because it will only get worst.&lt;br /&gt;&lt;br /&gt;How can you give hope to people for a brighter tomorrow, and then pull it right&lt;br /&gt;out from under them? Sure, I know that our good solders are getting hurt and even&lt;br /&gt;diing, but lets not let their sacrifice be in vain. We must finish the job.&lt;br /&gt;&lt;br /&gt;Also, we did not draft these people into service, and we are still not drafting&lt;br /&gt;them in. We currently are running under an all voluntary army.&lt;br /&gt;&lt;br /&gt;2. Did Saddam use Risin on his own people? That is a hard documented yes. Is this&lt;br /&gt;a WMD? Yes. If someone shoots you, can you assume that is his only bullet in his&lt;br /&gt;gun? No. Do I now believe that he had more? I think it is possible, but this is&lt;br /&gt;no longer about WMDs.&lt;br /&gt;&lt;br /&gt;We must stay to ensure that the people living there have a chance to make their&lt;br /&gt;fledgling democracy grow.&lt;br /&gt;&lt;br /&gt;Just as our founding fathers made mistakes, then formed the Bill of Rights, I expect&lt;br /&gt;both the people of Iraq and Afghanistan to do the same.&lt;br /&gt;&lt;br /&gt;3. What about Iran? Listen to what some of the media want you to think about the&lt;br /&gt;US Midwest and gun totin' (AKA extreemist, from anywhere) conservatives, and you&lt;br /&gt;hear, "turn it into glass" (usually ment in bad humor), or "turn it into a crater"&lt;br /&gt;(also usually ment in bad humor). I say, nuclear material has a huge contamination&lt;br /&gt;period, and you do not need to rely on a nuclear explosion. A plain old suitcase&lt;br /&gt;bomb will contaminate the subways or hospitals of any nation including Israel, France,&lt;br /&gt;England, Italy, etc. The Russians and Chinese are playing a very dangerous game.&lt;br /&gt;I would almost, if it would cause the UN to pass a sanction against Iran, have Russia&lt;br /&gt;and China lead that invasion, which they wont. Make it a deal with them. You don't&lt;br /&gt;want us doing it. Then stand up and take action so we don't have to.&lt;br /&gt;&lt;br /&gt;The countries that are "Favored" trading partners. Make them work to keep that status.&lt;br /&gt;&lt;br /&gt;The US does not need to lead every charge, we just need to lead in the moral stance&lt;br /&gt;that acting like a terrorist is no longer acceptable. Invading and attacking your&lt;br /&gt;neighbor is no longer acceptable.&lt;br /&gt;&lt;br /&gt;Now, our "allies" who have helped to feed the fires that we now fight, need to stand&lt;br /&gt;up and put then out.&lt;br /&gt;&lt;br /&gt;3. A whole lot of this is caused from us miss-using the intelligence agencies. Saddam,&lt;br /&gt;himself, had help of the CIA, to get where he is now. Lets stop trying to pick the&lt;br /&gt;lesser of multiple evils, and focus on not endorsing evil at all.&lt;br /&gt;&lt;br /&gt;4. We have two major allies in that region that we must protect, Turkey and Israel.&lt;br /&gt;I am not excluding the other Mediterranean countries, Italy has proven to be a real&lt;br /&gt;friend.&lt;br /&gt;&lt;br /&gt;Though we may be uncomfortable with some of Turkey's stances, they have done their&lt;br /&gt;best to not hinder us, while maintaining their own peace.&lt;br /&gt;&lt;br /&gt;Israel is under constant attack by the Palestine, and some of the people of Palestine&lt;br /&gt;have even voted Hammas into power. Hammas has vowed to not rest until Israel is&lt;br /&gt;gone. I would not rest until Hammas is ostracized by the very people that it claims&lt;br /&gt;are its own.&lt;br /&gt;&lt;br /&gt;That organization must fall apart from withing it's own ranks. Same with Al-Quida. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-5998676791301810025?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=5998676791301810025' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5998676791301810025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/5998676791301810025'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/07/many-notes-on-politics.html' title='Many notes on politics'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-114868659664136375</id><published>2006-05-26T16:33:00.000-07:00</published><updated>2006-05-26T16:36:36.653-07:00</updated><title type='text'>Why do I avoid Symantec stuff?</title><content type='html'>&lt;span style="font-size:180%;"&gt;Leading antivirus software exposes computers&lt;/span&gt;&lt;br /&gt;Security campany says flaw lets hackers steal sensitive data&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-size:-1;color:red;"&gt;Except from MSNBC website. Link to article below&lt;/span&gt;&lt;br /&gt;Updated: 11:55 a.m. PT May 26, 2006&lt;br /&gt;WASHINGTON - WASHINGTON — Symantec Corp.’s leading antivirus software, which protects some of the world’s largest corporations and U.S. government agencies, suffers from a flaw that lets hackers seize control of computers to steal sensitive data, delete files or implant malicious programs, researchers said Thursday.&lt;/blockquote&gt;&lt;a href="http://www.msnbc.msn.com/id/12990213/" target="_blank"&gt;Read full article here.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-114868659664136375?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=114868659664136375' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114868659664136375'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114868659664136375'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/05/why-do-i-avoid-symantec-stuff.html' title='Why do I avoid Symantec stuff?'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-114860491621120057</id><published>2006-05-25T17:52:00.000-07:00</published><updated>2007-04-04T22:35:13.018-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>Making sense of ASP.Net Paths</title><content type='html'>This is a must read if you are working with&lt;br /&gt;&lt;ul&gt;&lt;li&gt;ApplicationPath&lt;/li&gt;&lt;li&gt;PhysicalApplicationPath&lt;/li&gt;&lt;li&gt;PhysicalPath&lt;/li&gt;&lt;li&gt;CurrentExecutionFilePath&lt;/li&gt;&lt;li&gt;FilePath&lt;/li&gt;&lt;li&gt;Path&lt;/li&gt;&lt;li&gt;PathInfo&lt;/li&gt;&lt;li&gt;RawUrl&lt;/li&gt;&lt;li&gt;Url&lt;/li&gt;&lt;li&gt;Page.TemplateSourceDirectory&lt;/li&gt;&lt;li&gt;Control.TemplateSourceDirectory&lt;/li&gt;&lt;/ul&gt;&lt;a href="http://west-wind.com/weblog/posts/269.aspx"&gt;http://west-wind.com/weblog/posts/269.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-114860491621120057?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=114860491621120057' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114860491621120057'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114860491621120057'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/05/making-sense-of-aspnet-paths.html' title='Making sense of ASP.Net Paths'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-114798483008760145</id><published>2006-05-18T13:38:00.000-07:00</published><updated>2007-06-27T20:22:13.724-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASPX'/><category scheme='http://www.blogger.com/atom/ns#' term='User Groups'/><title type='text'>A couple of my recent presentations</title><content type='html'>&lt;a href="http://www.ocvbug.org/LinkClick.aspx?link=May10MinPresentCustomConfigHandler.zip&amp;tabid=78&amp;amp;mid=413"&gt;XML Custom Web.config handler with a URL rewrite practical example.&lt;/a&gt; &lt;p&gt;&lt;a href="http://www.ocvbug.org/LinkClick.aspx?link=AprilPresent_XML_FunNProfit.zip&amp;tabid=78&amp;amp;mid=413"&gt;XML for fun and profit.&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-114798483008760145?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=114798483008760145' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114798483008760145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114798483008760145'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/05/couple-of-my-recent-presentations.html' title='A couple of my recent presentations'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-114186412587222494</id><published>2006-03-08T16:26:00.000-08:00</published><updated>2007-06-27T20:22:43.144-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASPX'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Creating .resources.dll files for cultures supported by your project</title><content type='html'>&lt;p&gt;Got this from &lt;a href="http://edndoc.esri.com/arcobjects/9.1/ArcGISDevHelp/DevelopmentEnvs/DotNet/WorkingWithResources.htm#Compiling_resx_file"&gt;MSDN&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;First, ensure you have a &lt;a href="http://edndoc.esri.com/arcobjects/9.1/ArcGISDevHelp/DevelopmentEnvs/DotNet/WorkingWithResources.htm#Embedding_default_resources"&gt;default&lt;/a&gt; .resx or .resources file in your project.&lt;br /&gt;Take the default .resx or .resources file and create a separate localized file for each culture you want to support. &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Each file should contain resources with the same Names; the Value of each resource in the file should contain the localized value. &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Localized resource files should be named according to their culture, for example, &lt;basename&gt;.&lt;culture&gt;.resx or &lt;basename&gt;.&lt;culture&gt;.resources.&lt;br /&gt;Add the new resource files to the project, ensuring each one has its Build Action set to Embedded Resource. &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Build the project. &lt;/li&gt;&lt;br /&gt;&lt;li&gt;The compiler and linker will create a separate satellite assembly for each culture. The satellite assemblies will be placed in subdirectories under the directory holding your main assembly. The subdirectories will be named by culture, allowing the .NET runtime to locate the resources appropriate to the culture in which the application runs.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;p&gt;The main (default) resources file will be embedded in the main assembly.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-114186412587222494?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=114186412587222494' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114186412587222494'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114186412587222494'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/03/creating-resourcesdll-files-for.html' title='Creating .resources.dll files for cultures supported by your project'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-114186373874998259</id><published>2006-03-08T16:19:00.000-08:00</published><updated>2007-06-27T20:23:10.868-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASPX'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Another mostly unknown and under published fact.</title><content type='html'>&lt;strong&gt;Compiling a .resx file into a .resources file&lt;/strong&gt;&lt;br /&gt;XML-based .resx files can be compiled to binary .resources files either by using the Visual Studio IDE or the &lt;a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cptutorials/html/resource_generator__resgen_.asp"&gt;ResX Generator (ResXGen)&lt;/a&gt; sample in the tutorial.&lt;br /&gt;&lt;br /&gt;Any .resx file included in a Visual Studio project will be compiled to a .resources module when the project is built. See the &lt;a href="http://edndoc.esri.com/arcobjects/9.1/ArcGISDevHelp/DevelopmentEnvs/DotNet/WorkingWithResources.htm#Creating_resources_cultures"&gt;Creating a .resources.dll files for cultures supported by your project &lt;/a&gt;section for more information on how multiple resource files are used for localization.&lt;br /&gt;You can convert a .resx file into a .resources file independently of the build process using the .NET Framework SDK command resgen, for example:&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;resgen PanToolCS.resx PanToolCS.resources&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-114186373874998259?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=114186373874998259' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114186373874998259'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114186373874998259'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/03/another-mostly-unknown-and-under.html' title='Another mostly unknown and under published fact.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-114168343730513107</id><published>2006-03-06T14:16:00.000-08:00</published><updated>2007-06-27T20:23:56.367-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VB.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Training'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='ASPX'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Some good training links</title><content type='html'>&lt;a href="http://www.thedifferenceisobviousvb05.com/Campaign.aspx"&gt;http://www.thedifferenceisobviousvb05.com/Campaign.aspx&lt;/a&gt;&lt;br /&gt;(Will be downloadable l8r)&lt;br /&gt;&lt;br /&gt;How Do I...&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/asp.net/learning/learn/newtodevelopment/default.aspx"&gt;http://msdn.microsoft.com/asp.net/learning/&lt;br /&gt;learn/newtodevelopment/default.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Look at the "Free Elearning" sub sections&lt;br /&gt;&lt;a href="http://www.microsoft.com/technet/prodtechnol/sql/2005/learning/default.mspx"&gt;http://www.microsoft.com/technet/prodtechnol/sql/&lt;br /&gt;2005/learning/default.mspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-114168343730513107?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=114168343730513107' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114168343730513107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114168343730513107'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/03/some-good-training-links.html' title='Some good training links'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-114075535635258729</id><published>2006-02-23T20:29:00.000-08:00</published><updated>2007-06-27T20:24:21.965-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VB.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='ASPX'/><title type='text'>ASP.NET Project "Atlas" Quickstart Tutorial</title><content type='html'>&lt;a href="http://atlas.asp.net/quickstart/atlas/"&gt;ASP.NET Project "Atlas" Quickstart Tutorial&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you liked the simplicity of MagicAjax.net but want more, try out Microsoft's Atlas.&lt;br /&gt;Ajax for the rest of us code geeks.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-114075535635258729?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=114075535635258729' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114075535635258729'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114075535635258729'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/02/aspnet-project-atlas-quickstart.html' title='ASP.NET Project &quot;Atlas&quot; Quickstart Tutorial'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-114065469874604015</id><published>2006-02-22T16:18:00.000-08:00</published><updated>2007-06-27T21:10:18.599-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VB.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='BizTalk'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Rant'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='ASPX'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Microsoft ships beta stuff</title><content type='html'>&lt;strong&gt;SQL 2005 Management Tools&lt;/strong&gt;&lt;br /&gt;Though the SQL Engine is solid as a rock from my testing the management tools are still beta.&lt;br /&gt;I have crashed the summary tab many times now. They only way to recover is to close the Management console and relaunch it.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Visual Studio 2005&lt;/strong&gt;&lt;br /&gt;Besides the XML tools being messed up. Making it harder to go from XML to XSD to Code supporting XSD, and removing Web Application, there are plenty of things that needed to be placed in either the right click menus or the top menus. I'll post them as I run across them.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;ASP.NET 2.0&lt;/strong&gt;&lt;br /&gt;Built in security controls and tables, not ready of enterprise. Very illogical, but functional, design. Great for small to medium small sites. Not ready for primetime. Too much is designed for static information, and deployed XML files. Not enough on the power of SQL. Too many one to one tables, that are small in the first place. "Hey we got a code monkey, let him pop out the core built-in publicly released security framework."&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;BizTalk 2004/2006&lt;/strong&gt;&lt;br /&gt;Good program, PRE-alpha documentation.&lt;br /&gt;&lt;br /&gt;Does it sound like I am frustrated? Hell Yes!&lt;br /&gt;Does it mean I am ready to drop the new stuff and run back? Hell No!&lt;br /&gt;There is still a ton of improvements that are directly applicable, and everything that I ran into that is a pain in the butt, is fixable, or bypass-able.&lt;br /&gt;&lt;br /&gt;Don't expect too much detail on this. I was just venting, with the hopes that someone from MS will see this.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-114065469874604015?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=114065469874604015' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114065469874604015'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114065469874604015'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/02/microsoft-ships-beta-stuff.html' title='Microsoft ships beta stuff'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-114006337865165615</id><published>2006-02-15T20:01:00.000-08:00</published><updated>2007-06-27T20:25:14.189-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Lots-o-Free Stuff</title><content type='html'>Here is a list of FREE and OPENSOURCE .Net stuff.&lt;br /&gt;I have tried to make sure the links are current. Most of the is for .Net 1.1&lt;br /&gt;&lt;br /&gt;Data Access Application Block (Microsoft ASP.NET Team)&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/library/en-us/dnpag2/html/daab.asp" target="_blank"&gt;http://msdn.microsoft.com/library/en-us/dnpag2/html/daab.asp&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Exception Management Application Block (Microsoft ASP.NET Team)&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/library/en-us/dnpag2/html/ehab.asp" target="_blank"&gt;http://msdn.microsoft.com/library/en-us/dnpag2/html/ehab.asp&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Utility Belt&lt;br /&gt;&lt;a href="http://www.learnasp.com/freebook/learn/?caller=utilitybelt&amp;section=Utility+Belt+-+FREE+Reusable+Library"&gt;http://www.learnasp.com/freebook/learn/&lt;br /&gt;?caller=utilitybelt&amp;amp;section=Utility+Belt+-+FREE+Reusable+Library&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ssData&lt;br /&gt;&lt;a href="http://www.sweetsuite.net/shopping/Scripts/prodView.asp?idproduct=6" target="_blank"&gt;http://www.sweetsuite.net/shopping/&lt;br /&gt;Scripts/prodView.asp?idproduct=6&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ssException&lt;br /&gt;&lt;a href="http://www.sweetsuite.net/shopping/Scripts/prodView.asp?idproduct=9"&gt;http://www.sweetsuite.net/shopping/Scripts/&lt;br /&gt;prodView.asp?idproduct=9&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Log4net&lt;br /&gt;&lt;a href="http://logging.apache.org/log4net/"&gt;http://logging.apache.org/log4net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;eWorld UI&lt;br /&gt;&lt;a href="http://www.eworldui.net/" target="_blank"&gt;http://www.eworldui.net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;obout Controls (obout)&lt;br /&gt;&lt;a href="http://www.obout.com/" target="_blank"&gt;http://www.obout.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;TimothyHumphrey.WebControls&lt;br /&gt;&lt;a href="http://timothyhumphrey.name/thwc/" target="_blank"&gt;http://timothyhumphrey.name/thwc/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;WebToolBox Collection&lt;br /&gt;&lt;a href="http://www.salimnaim.com/" target="_blank"&gt;http://www.salimnaim.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;SuperDataGrid&lt;br /&gt;&lt;a href="http://superexpert.com/default.aspx?id=427" target="_blank"&gt;http://superexpert.com/default.aspx?id=427&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;DataForm&lt;br /&gt;&lt;a href="http://superexpert.com/default.aspx?id=609" target="_blank"&gt;http://superexpert.com/default.aspx?id=609&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;XML Edit Grid&lt;br /&gt;&lt;a href="http://www.asp.net/ControlGallery/ControlDetail.aspx?Control=12&amp;tabindex=2" target="_blank"&gt;http://www.asp.net/ControlGallery/&lt;br /&gt;ControlDetail.aspx?Control=12&amp;amp;tabindex=2&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ASP.NET DB Admin Control&lt;br /&gt;&lt;a href="http://hm.munirbrothers.net/aspnet-db-admin.asp" target="_blank"&gt;http://hm.munirbrothers.net/aspnet-db-admin.asp&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;DataGrid Edit Control&lt;br /&gt;&lt;a href="http://aspalliance.com/47" target="_blank"&gt;ASPAlliance.com Article 47&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Free SMTP&lt;br /&gt;&lt;a href="http://www.freesmtp.net/" target="_blank"&gt;http://www.freesmtp.net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Email Spoofer.NET&lt;br /&gt;&lt;a href="http://www.emailspoofer.net/" target="_blank"&gt;http://www.emailspoofer.net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;DotNetOpenMail&lt;br /&gt;&lt;a href="http://dotnetopenmail.sourceforge.net/" target="_blank"&gt;http://dotnetopenmail.sourceforge.net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Master Pages&lt;br /&gt;&lt;a href="http://www.asp.net/ControlGallery/ControlDetail.aspx?control=385&amp;tabindex=2" target="_blank"&gt;http://www.asp.net/ControlGallery/&lt;br /&gt;ControlDetail.aspx?control=385&amp;amp;tabindex=2&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ASP.NET HTML Templates&lt;br /&gt;&lt;a href="http://joel.net/code/dotnet_templates.aspx" target="_blank"&gt;http://joel.net/code/dotnet_templates.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Evolve Master Pages&lt;br /&gt;&lt;a href="http://www.evolvesoftware.ch/masterpages/" target="_blank"&gt;http://www.evolvesoftware.ch/masterpages/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;skmMenu&lt;br /&gt;&lt;a href="http://skmmenu.com/menu" target="_blank"&gt;http://skmmenu.com/menu&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Dommelen SlideMenu, SlideBar, and TreeMenu&lt;br /&gt;&lt;a href="http://at-krays.com/csharp.html" target="_blank"&gt;http://at-krays.com/csharp.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;SlidingMenu&lt;br /&gt;&lt;a href="http://www.menulab.com/slidingmenu/index.aspx" target="_blank"&gt;http://www.menulab.com/slidingmenu/index.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;NetPolls&lt;br /&gt;&lt;a href="http://www.nsurvey.org/netpollsfeatures.aspx" target="_blank"&gt;http://www.nsurvey.org/netpollsfeatures.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Content Rater&lt;br /&gt;&lt;a href="http://aspnet.4guysfromrolla.com/articles/042104-1.aspx" target="_blank"&gt;http://aspnet.4guysfromrolla.com/articles/042104-1.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;PageComments&lt;br /&gt;&lt;a href="http://joel.net/code/page_comments.aspx" target="_blank"&gt;http://joel.net/code/page_comments.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Weblogs&lt;br /&gt;&lt;a href="http://joel.net/code/weblogs.aspx" target="_blank"&gt;http://joel.net/code/weblogs.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;PdfCreator v1.1&lt;br /&gt;&lt;a href="http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=5588085E-3D0B-4DB8-8A88-603EF212D0DB" target="_blank"&gt;http://www.gotdotnet.com/Community/UserSamples/&lt;br /&gt;Details.aspx?SampleGuid=5588085E-3D0B-4DB8-8A88-603EF212D0DB&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Dynamic Bar Graph&lt;br /&gt;&lt;a href="http://www.codedoneright.com/DynamicBarGraph.htm" target="_blank"&gt;http://www.codedoneright.com/DynamicBarGraph.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;LGX Report&lt;br /&gt;&lt;a href="http://www.freereporting.com/" target="_blank"&gt;http://www.freereporting.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;FreeTextBox&lt;br /&gt;&lt;a href="http://www.freetextbox.com/" target="_blank"&gt;http://www.freetextbox.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Snap Control&lt;br /&gt;&lt;a href="http://www.componentart.com/snap/" target="_blank"&gt;http://www.componentart.com/snap/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ShowHideButton&lt;br /&gt;&lt;a href="http://altinoren.com/showhidebutton.htm" target="_blank"&gt;http://altinoren.com/showhidebutton.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;LocateIP .Net&lt;br /&gt;&lt;a href="http://www.locateip.com/" target="_blank"&gt;http://www.locateip.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Traffic Monitor&lt;br /&gt;&lt;a href="http://www.peterblum.com/TrafficMonitor/TrafficMonitorHome.aspx" target="_blank"&gt;http://www.peterblum.com/TrafficMonitor/TrafficMonitorHome.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;AWStats&lt;br /&gt;&lt;a href="http://awstats.sourceforge.net/" target="_blank"&gt;http://awstats.sourceforge.net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;LogFile&lt;br /&gt;&lt;a href="http://www.motobit.com/help/ScptUtl/cl88.htm" target="_blank"&gt;http://www.motobit.com/help/ScptUtl/cl88.htm&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-114006337865165615?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=114006337865165615' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114006337865165615'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/114006337865165615'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/02/lots-o-free-stuff.html' title='Lots-o-Free Stuff'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-113900143363986764</id><published>2006-02-03T13:15:00.000-08:00</published><updated>2007-06-27T20:25:47.192-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Sample Code Generator 1.4.2.1</title><content type='html'>Download this tool to generate sample C# &amp; VB classes from an XSD schema.&lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=89e6b1e5-f66c-4a4d-933b-46222bb01eb0&amp;amp;DisplayLang=en"&gt;http://www.microsoft.com/downloads/details.aspx?&lt;br /&gt;FamilyID=89e6b1e5-f66c-4a4d-933b-&lt;br /&gt;46222bb01eb0&amp;amp;DisplayLang=en&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Same as the one below, just from the MS site so it is more reliable for downloading.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-113900143363986764?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=113900143363986764' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113900143363986764'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113900143363986764'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/02/sample-code-generator-1421.html' title='Sample Code Generator 1.4.2.1'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-113832217454527623</id><published>2006-01-26T16:29:00.000-08:00</published><updated>2007-06-27T20:26:23.030-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web Tech'/><category scheme='http://www.blogger.com/atom/ns#' term='Hosting Companies'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Here is a good list of MS compatible SSL and X.509 Certificate issuers.</title><content type='html'>AOL &lt;a href="http://www.aol.com/"&gt;(http://www.aol.com)&lt;/a&gt;&lt;br /&gt;A-Trust (&lt;a href="http://www.a-trust.at/"&gt;http://www.a-trust.at/&lt;/a&gt;)&lt;br /&gt;Arge Daten (&lt;a href="http://www.signatur.rtr.at/de/providers/providers/argedaten.html"&gt;http://www.signatur.rtr.at/de/providers/providers/argedaten.html&lt;/a&gt;)&lt;br /&gt;AS Sertifitseerimiskeskuse &lt;a href="http://www.sk.ee/"&gt;(http://www.sk.ee)&lt;/a&gt;&lt;br /&gt;Asociacion Nacional del Notariado Mexicano (&lt;a href="http://www.notariadomexicano.org.mx/"&gt;http://www.notariadomexicano.org.mx/&lt;/a&gt;)&lt;br /&gt;Austria Telekom-Control Commission (&lt;a href="http://www.signatur.rtr.at/"&gt;http://www.signatur.rtr.at/&lt;/a&gt;)&lt;br /&gt;Autoridade Certificadora Raiz Brasileira (&lt;a href="http://www.icpbrasil.gov.br/"&gt;http://www.icpbrasil.gov.br/&lt;/a&gt;)&lt;br /&gt;Autoridad de Certificacion Firmaprofesional&lt;br /&gt;Baltimore (&lt;a href="http://www.baltimore.com/"&gt;http://www.baltimore.com/&lt;/a&gt;)&lt;br /&gt;Belgacom E-Trust (&lt;a href="http://www.e-trust.be/"&gt;http://www.e-trust.be/&lt;/a&gt;)&lt;br /&gt;CC Signet (&lt;a href="http://www.signet.pl/"&gt;http://www.signet.pl/&lt;/a&gt;)&lt;br /&gt;CAMERFIRMA (&lt;a href="http://www.camerfirma.com/"&gt;http://www.camerfirma.com/&lt;/a&gt;)&lt;br /&gt;Certicámara S.A. (&lt;a href="http://www.certicamara.com/"&gt;http://www.certicamara.com/&lt;/a&gt;)&lt;br /&gt;Certisign (&lt;a href="http://www.certisign.com.br/"&gt;http://www.certisign.com.br/&lt;/a&gt;)&lt;br /&gt;CertPlus (&lt;a href="http://www.certplus.com/"&gt;http://www.certplus.com/&lt;/a&gt;)&lt;br /&gt;Comodo Group (&lt;a href="http://www.comodogroup.com/"&gt;http://www.comodogroup.com/&lt;/a&gt;)&lt;br /&gt;ComSign (&lt;a href="http://www.comsign.co.il/"&gt;http://www.comsign.co.il/&lt;/a&gt;)&lt;br /&gt;Deutsche Telekom (&lt;a href="http://www.telekom.de/"&gt;http://www.telekom.de/&lt;/a&gt;)&lt;br /&gt;DST (&lt;a href="http://www.digsigtrust.com/"&gt;http://www.digsigtrust.com/&lt;/a&gt;)&lt;br /&gt;Entrust (&lt;a href="http://www.entrust.com/certificate_services/index.htm"&gt;http://www.entrust.com/certificate_services/index.htm&lt;/a&gt;)&lt;br /&gt;eSign (&lt;a href="http://www.esign.com.au/"&gt;http://www.esign.com.au/&lt;/a&gt;)&lt;br /&gt;EUnet International (&lt;a href="http://www.eunet.fi/"&gt;http://www.eunet.fi/&lt;/a&gt;)&lt;br /&gt;FESTE (&lt;a href="http://www.feste.org/"&gt;http://www.feste.org/&lt;/a&gt;)&lt;br /&gt;First Data Digital Certificates (&lt;a href="http://www.firstdata.com/index.jsp"&gt;http://www.firstdata.com/index.jsp&lt;/a&gt;)&lt;br /&gt;FNMT (&lt;a href="http://www.ceres.fnmt.es/"&gt;http://www.ceres.fnmt.es/&lt;/a&gt;)&lt;br /&gt;Gatekeeper Root CA (&lt;a href="http://www.agimo.gov.au/infrastructure/gatekeeper"&gt;http://www.agimo.gov.au/infrastructure/gatekeeper&lt;/a&gt;)&lt;br /&gt;GeoTrust (&lt;a href="http://www.geotrust.com/"&gt;http://www.geotrust.com/&lt;/a&gt;)&lt;br /&gt;GlobalSign (&lt;a href="http://www.globalsign.com/"&gt;http://www.globalsign.com/&lt;/a&gt;)&lt;br /&gt;GoDaddy &lt;a href="http://www.godaddy.com/"&gt;(http://www.godaddy.com)&lt;/a&gt;&lt;br /&gt;Hongkong Post (&lt;a href="http://www.hongkongpost.gov.hk/product/cps/ecert/index.html"&gt;http://www.hongkongpost.gov.hk/product/cps/ecert/index.html&lt;/a&gt;)&lt;br /&gt;IPS SERVIDORES (&lt;a href="http://www.ips.es/"&gt;http://www.ips.es/&lt;/a&gt;)&lt;br /&gt;KMD (&lt;a href="http://www.kmd-ca.dk/"&gt;http://www.kmd-ca.dk/&lt;/a&gt;)&lt;br /&gt;NetLock (&lt;a href="http://www.netlock.hu/"&gt;http://www.netlock.hu/&lt;/a&gt;)&lt;br /&gt;Post.Trust (&lt;a href="http://www.post.trust.ie/"&gt;http://www.post.trust.ie/&lt;/a&gt;)&lt;br /&gt;PTT Post (&lt;a href="http://www.ptt-post.nl/"&gt;http://www.ptt-post.nl/&lt;/a&gt;)&lt;br /&gt;Quovadis (&lt;a href="http://www.quovadis.bm/"&gt;http://www.quovadis.bm/&lt;/a&gt;)&lt;br /&gt;RSA (&lt;a href="http://www.rsasecurity.com/"&gt;http://www.rsasecurity.com/&lt;/a&gt;)&lt;br /&gt;Saunalahden Serveri (&lt;a href="http://www.saunalahti.fi/"&gt;http://www.saunalahti.fi/&lt;/a&gt;)&lt;br /&gt;SECOM Trust.net &lt;a href="http://www.secomtrust.net/"&gt;(http://www.secomtrust.net)&lt;/a&gt;&lt;br /&gt;SecureNet (&lt;a href="http://www.securenetasia.com/"&gt;http://www.securenetasia.com/&lt;/a&gt;)&lt;br /&gt;SecureSign (&lt;a href="http://www2.jcsinc.co.jp/"&gt;http://www2.jcsinc.co.jp/&lt;/a&gt;)&lt;br /&gt;Serasa (&lt;a href="http://www.serasa.com/"&gt;http://www.serasa.com/&lt;/a&gt;)&lt;br /&gt;SIA (&lt;a href="https://ca.sia.it/"&gt;https://ca.sia.it/&lt;/a&gt;)&lt;br /&gt;Sonera (&lt;a href="http://www.sonera.com/"&gt;http://www.sonera.com/&lt;/a&gt;)&lt;br /&gt;Spanish Property &amp;amp; Commerce Registry (&lt;a href="https://www.registradores.org/"&gt;https://www.registradores.org/&lt;/a&gt;)&lt;br /&gt;TC TrustCenter (&lt;a href="http://www.trustcenter.de/"&gt;http://www.trustcenter.de/&lt;/a&gt;)&lt;br /&gt;TDC &lt;a href="http://www.tdc.dk/"&gt;(http://www.tdc.dk)&lt;/a&gt;&lt;br /&gt;Thawte (&lt;a href="http://www.thawte.com/"&gt;http://www.thawte.com/&lt;/a&gt;)&lt;br /&gt;Trustis Limited (&lt;a href="http://www.trustis.com/"&gt;http://www.trustis.com/&lt;/a&gt;)&lt;br /&gt;Unizeto Certum (&lt;a href="http://www.certum.pl/en/index.html"&gt;http://www.certum.pl/en/index.html&lt;/a&gt;)&lt;br /&gt;UserTRUST (&lt;a href="http://www.usertrust.com/"&gt;http://www.usertrust.com/&lt;/a&gt;)&lt;br /&gt;ValiCert (&lt;a href="http://www.valicert.com/"&gt;http://www.valicert.com/&lt;/a&gt;)&lt;br /&gt;Verisign (&lt;a href="http://www.verisign.com/"&gt;http://www.verisign.com/&lt;/a&gt;)&lt;br /&gt;Wells Fargo Root Certificate Authority &lt;a href="http://www.wellsfargo.com/certpolicy"&gt;(http://www.wellsfargo.com/certpolicy&lt;/a&gt;)&lt;br /&gt;XRamp &lt;a href="http://www.xramp.com/"&gt;(http://www.xramp.com)&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-113832217454527623?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=113832217454527623' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113832217454527623'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113832217454527623'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/01/here-is-good-list-of-ms-compatible-ssl.html' title='Here is a good list of MS compatible SSL and X.509 Certificate issuers.'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-113806705112536524</id><published>2006-01-23T17:31:00.000-08:00</published><updated>2007-04-04T22:37:04.881-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='User Groups'/><title type='text'>Code Camp Part 2: Observations</title><content type='html'>A few points regarding Code Camp.&lt;br /&gt;Note: I will start posting my presentation when I get to "Code Camp Part 3: Presentation".&lt;br /&gt;&lt;br /&gt;1. Gripe: I suck... [lol].&lt;br /&gt;Honestly, I needed more presentation time and preparation. I basically took a 2+ hour presentation and chopped it up for a 45 min confusion. I just hope I put enough Perls of wisdom in there to help people out. This is why it is so important that I post everything.&lt;br /&gt;&lt;br /&gt;2. Gripe: My projector sucked.&lt;br /&gt;I'm back at my office and I am not having the problems with the projector that I was at the event.&lt;br /&gt;&lt;br /&gt;3. Kudos: Most of the people who attended seemed to know what they wanted. Another reason it is so important for me to post my code. The attendees really made the show for me. Next time I will break up my presentation and cover more information over more sessions in better depth. I way underestimated the nature of the attendees.&lt;br /&gt;&lt;br /&gt;4. Kudos: CSF and MS for putting this together. I would have liked to see the professors or Sr students from CSF fill in the gaps for things like PHP and Perl development, but I think they did awesome.&lt;br /&gt;&lt;br /&gt;5. Top assistance goal: I would love to help recruit more presenters for things like XML, Perl, PHP, Java, Delphi, Linux/Unix development, Oracle, etc. These are also other great things for people to be aware of if not learn to at least an introductory level.&lt;br /&gt;&lt;br /&gt;In closing, I got to get my presentation posted.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-113806705112536524?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=113806705112536524' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113806705112536524'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113806705112536524'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/01/code-camp-part-2-observations.html' title='Code Camp Part 2: Observations'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-113806451631207617</id><published>2006-01-23T16:45:00.000-08:00</published><updated>2007-04-04T22:37:04.881-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='User Groups'/><title type='text'>Code Camp Part 1: Corrections</title><content type='html'>For those of you who attended I have a couple of corrections.&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Generating XSDs are easy in VS2005. After saving your XSD go to the XML menu and select Create Schema. &lt;blockquote&gt;Microsoft should not have changed the old right click to generate functionality of the old one.&lt;/blockquote&gt;&lt;/li&gt;&lt;li&gt;The tool to generate your code for the XSD is either &lt;p&gt;xsd.exe&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cptools/html/cpconXMLSchemaDefinitionToolXsdexe.asp"&gt;http://msdn.microsoft.com/&lt;br/&gt;library/default.asp?url=/library/&lt;br/&gt;en-us/cptools/html/&lt;br/&gt;cpconXMLSchemaDefinitionToolXsdexe.asp&lt;/a&gt;&lt;br /&gt;or&lt;br /&gt;XSDObjectGen.exe (A much better tool)&lt;br /&gt;&lt;a href="http://apps.gotdotnet.com/xmltools/xsdobjgen/readme.htm"&gt;http://apps.gotdotnet.com/xmltools/xsdobjgen/readme.htm&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;If you decide to use XSDObjectGen.exe, then what you may want to do is to add it to your External Tools collection of VS2005 under "Tools&gt;&gt;External Tools...".&lt;/p&gt;&lt;p&gt;Set your parameters as the following&lt;/p&gt;&lt;ul&gt;&lt;li&gt;For VB: $(ItemPath) /l:&lt;strong&gt;vb&lt;/strong&gt; /f:$(ItemFileName).vb /c /d /t&lt;/li&gt;&lt;li&gt;For C#: $(ItemPath) /l:&lt;strong&gt;cs&lt;/strong&gt; /f:$(ItemFileName).vb /c /d /t&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;More will be posted soon.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-113806451631207617?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=113806451631207617' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113806451631207617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113806451631207617'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/01/code-camp-part-1-corrections.html' title='Code Camp Part 1: Corrections'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-113711766989974979</id><published>2006-01-12T17:26:00.001-08:00</published><updated>2007-04-04T22:37:04.882-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='User Groups'/><title type='text'>OCVBUG Presentation on Ajax under 15 mins is posted</title><content type='html'>You can go to &lt;a href="http://www.MagicAjax.net"&gt;www.MagicAjax.net&lt;/a&gt; for the DLLs for both .Net 1.1 and 2.0.&lt;br /&gt;For my presentation go to &lt;a href="http://www.ocvbug.org/Home/tabid/52/Default.aspx"&gt;http://www.ocvbug.org/Home/tabid/52/Default.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;More will be posted later.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-113711766989974979?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=113711766989974979' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113711766989974979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113711766989974979'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2006/01/ocvbug-presentation-on-ajax-under-15_12.html' title='OCVBUG Presentation on Ajax under 15 mins is posted'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-113468175631920108</id><published>2005-12-15T13:21:00.000-08:00</published><updated>2007-06-27T20:27:02.883-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web Tech'/><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>How to produce a podcast</title><content type='html'>Very simple... It is an RSS 2.0 feed with one or more MP3 attachments.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://audiofeeds.org/tutorial.php"&gt;http://audiofeeds.org/tutorial.php&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-113468175631920108?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=113468175631920108' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113468175631920108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113468175631920108'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2005/12/how-to-produce-podcast.html' title='How to produce a podcast'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-113416907865634795</id><published>2005-12-09T14:57:00.000-08:00</published><updated>2007-06-27T20:27:30.359-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>XSLT</title><content type='html'>This site has some great info on sample code for XSLT&lt;br /&gt;&lt;a href="http://www.topxml.com/xsltStylesheets/xslt_extension_functions.asp"&gt;http://www.topxml.com/xsltStylesheets/xslt_extension_functions.asp&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-113416907865634795?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=113416907865634795' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113416907865634795'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113416907865634795'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2005/12/xslt.html' title='XSLT'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-113416899378546907</id><published>2005-12-09T14:53:00.000-08:00</published><updated>2007-06-27T20:28:39.157-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web Tech'/><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Securing your site</title><content type='html'>We know that the simplest way to secure your site is with a security certificate from Verisign or GoDaddy, but how do you do it? can you make your own certificates?&lt;br /&gt;&lt;br /&gt;Here is the simplest set of instructions that I have seen:&lt;br /&gt;&lt;a href="http://www.soltrus.com/english/install/ms_v6.html"&gt;http://www.soltrus.com/english/install/ms_v6.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Also, Windows 2003, Std and Adv, come with certificate servers. So now you can secure your site with your own certificates. Just don't try to rename your server or it's domain, or else you will have to start all over.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-113416899378546907?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=113416899378546907' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113416899378546907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113416899378546907'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2005/12/securing-your-site.html' title='Securing your site'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-113383486754125743</id><published>2005-12-05T17:55:00.000-08:00</published><updated>2007-06-27T20:36:45.750-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VB.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='WebServices'/><title type='text'>Webservice Authentication Made Simple</title><content type='html'>&amp;lt; system.web.services.webservice(description:="authentication&lt;br /&gt;Name:="AD", _&lt;br /&gt;Namespace:=http://Tempuri.org/AD/AD) &amp;gt; _&lt;br /&gt;Public Class VPO&lt;br /&gt;Inherits System.Web.Services.WebService&lt;br /&gt;&lt;br /&gt;#Region " Web Services Designer Generated Code "&lt;br /&gt;&lt;br /&gt;'Implimentation of the Header Class&lt;br /&gt;Public Authentication As AuthHeader&lt;br /&gt;&lt;br /&gt;'The soapheader attribute tells the interface what to do.&lt;br /&gt;&amp;lt; system.web.services.webservice(description:="authentication&lt;br /&gt;CacheDuration:=0, _&lt;br /&gt;Description:="Test Interface with Return", _&lt;br /&gt;EnableSession:=False, _&lt;br /&gt;MessageName:="TestReturn"), _&lt;br /&gt;SoapHeader("Authentication") &amp;gt; _&lt;br /&gt;Public Function HelloWorld() As String&lt;br /&gt;Return "Hello World: " &amp;amp; Authentication.VerndorID.ToString&lt;br /&gt;End Function&lt;br /&gt;End Class&lt;br /&gt;&lt;br /&gt;'This is the class that defines what is being passed in the authentication&lt;br /&gt;Public Class AuthHeader&lt;br /&gt;Inherits SoapHeader&lt;br /&gt;Public VerndorID As Guid&lt;br /&gt;End Class&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-113383486754125743?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=113383486754125743' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113383486754125743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113383486754125743'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2005/12/webservice-authentication-made-simple.html' title='Webservice Authentication Made Simple'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-113277360015022059</id><published>2005-11-22T23:06:00.000-08:00</published><updated>2007-06-27T20:37:27.415-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><category scheme='http://www.blogger.com/atom/ns#' term='Joke'/><title type='text'>Very Important Code</title><content type='html'>10 Dim x as boolean&lt;br /&gt;20 x = Seek(ObjectRef "Dinner Table")&lt;br /&gt;30 If x then&lt;br /&gt;40 Call Eat&lt;br /&gt;50 Else&lt;br /&gt;60 (New Location).Move&lt;br /&gt;70 End If&lt;br /&gt;80 Rem Loops Indefinitely&lt;br /&gt;100 Function Eat()&lt;br /&gt;110 Me.Sit(Chair)&lt;br /&gt;120 Me.Use(Fork)&lt;br /&gt;130 Me.Consume(Food)&lt;br /&gt;140 If Me.Full then Me.Nap(60, Minutes, "Or until Halftime")&lt;br /&gt;145 If Table(Dinner).FoodState.Empty Then Call ExitTable&lt;br /&gt;150 Goto 130&lt;br /&gt;200 Function ExitTable()&lt;br /&gt;210 If Me.Home Then&lt;br /&gt;213 Me.PassOut : Rem This may result in sleeping on floor.&lt;br /&gt;215 Goto 250&lt;br /&gt;220 If Me.FamilyHome Them&lt;br /&gt;223 Me.PassOut : Rem This may result in sleeping in chair&lt;br /&gt;225 Goto 250&lt;br /&gt;240 (New Location).Move&lt;br /&gt;245 Goto 210&lt;br /&gt;250 End&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-113277360015022059?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=113277360015022059' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113277360015022059'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113277360015022059'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2005/11/very-important-code.html' title='Very Important Code'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12285413.post-113158460077075951</id><published>2005-11-09T17:00:00.000-08:00</published><updated>2007-06-27T20:37:45.559-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Geek Talk'/><title type='text'>Got Shrinkster</title><content type='html'>Is your URL sooooo long that it breaks in emails?&lt;br /&gt;Use &lt;a href="http://shrinkster.com/"&gt;http://shrinkster.com&lt;/a&gt; to shorten it.&lt;br /&gt;Just like many of my favorite Internet tools, its free.&lt;br /&gt;Just wait, these stupid spammers will start using it now, and I'll have to add these guys to my filter of key words to block.&lt;br /&gt;&lt;br /&gt;We will see. Until then. I'll use them.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12285413-113158460077075951?l=brianscodeextreme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12285413&amp;postID=113158460077075951' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113158460077075951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12285413/posts/default/113158460077075951'/><link rel='alternate' type='text/html' href='http://brianscodeextreme.blogspot.com/2005/11/got-shrinkster.html' title='Got Shrinkster'/><author><name>Brian Webb</name><uri>http://www.blogger.com/profile/18340425582853299541</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
