<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-5557676106599030943</atom:id><lastBuildDate>Sat, 10 Oct 2009 09:59:29 +0000</lastBuildDate><title>My name is Justin Kohnen, and I’m a Geek.</title><description /><link>http://bouncetadiss.blogspot.com/</link><managingEditor>noreply@blogger.com (Justin Kohnen)</managingEditor><generator>Blogger</generator><openSearch:totalResults>38</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/JustinKohnen" type="application/rss+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-1747049184698193587</guid><pubDate>Wed, 18 Mar 2009 06:34:00 +0000</pubDate><atom:updated>2009-03-17T23:48:26.139-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">event</category><category domain="http://www.blogger.com/atom/ns#">conference</category><category domain="http://www.blogger.com/atom/ns#">cododn</category><title>CODODN 2009 Registration is open!</title><description>&lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G9Y2atCrYJ4/ScCX-eelzrI/AAAAAAAAAmM/uFnbNC0COAs/s1600-h/CentralOhioDoDNLogo_small%5B14%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="155" alt="CentralOhioDoDNLogo_small" src="http://lh3.ggpht.com/_G9Y2atCrYJ4/ScCX-oIYYrI/AAAAAAAAAmQ/MvldxF6L2Jc/CentralOhioDoDNLogo_small_thumb%5B7%5D.png?imgmax=800" width="144" align="right" border="0" /&gt;&lt;/a&gt; Registration for the Central Ohio Day of .NET is now open. &lt;a href="http://tinyurl.com/CODODN09" target="_blank"&gt;Quick sign up&lt;/a&gt; while spots are still open.&lt;/p&gt;  &lt;p&gt;The Central Ohio Day of .NET is a joint venture between the Dayton .NET Developers Group, Central Ohio .NET Developers Group, Cincinnati SQL Server Users Group and the Cincinnati .NET Users Group. The event is a &lt;u&gt;FREE&lt;/u&gt; day of technology discussions devoted to helping the local development community grow. Please check back often for more information about Day of .NET events.&lt;/p&gt;  &lt;p&gt;If you need additional information please visit the &lt;a href="http://cinnug.org/cododn/" target="_blank"&gt;official website&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;If you want to track the event start following &lt;a href="http://twitter.com/cododn" target="_blank"&gt;@CODODN&lt;/a&gt; on &lt;a href="http://www.Twitter.com" target="_blank"&gt;Twitter&lt;/a&gt;. Or keep an eye on the &lt;a href="http://hashtags.org/tag/cododn09" target="_blank"&gt;hash tags&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;And since I'm the board member in charge of marketing for the event, help me spread the word. &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Tweet it on &lt;a href="http://www.Twitter.com" target="_blank"&gt;Twitter&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://is.gd/nOes" target="_blank"&gt;Download the flyers&lt;/a&gt; and print some off to hang around the office &lt;/li&gt;    &lt;li&gt;Blog about it      &lt;ul&gt;       &lt;li&gt;Don't forget your blog bling. Wear your badge with pride:          &lt;div style="border-right: gray 1px solid; padding-right: 5px; border-top: gray 1px solid; padding-left: 5px; padding-bottom: 5px; margin: 10px; border-left: gray 1px solid; padding-top: 5px; border-bottom: gray 1px solid"&gt;&amp;lt;a href=&amp;quot;&lt;a href="http://www.cinnug.org/cododn" ?="?"&gt;http://www.cinnug.org/cododn&amp;quot;&lt;/a&gt;&amp;gt;&amp;lt;img style=&amp;quot;border-top-style: none; border-right-style: none; border-left-style: none; border-bottom-style: none&amp;quot; src=&amp;quot;&lt;a href="http://www.cinnug.org/images/cododn2009Badge.gif" ?="?"&gt;http://www.cinnug.org/images/cododn2009Badge.gif&amp;quot;&lt;/a&gt; border=&amp;quot;0&amp;quot; /&amp;gt;&amp;lt;/a&amp;gt; &lt;/div&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Tell your friends, your mother, your cats, and dogs. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;A great event is coming up.... don't miss it. &lt;a href="http://tinyurl.com/CODODN09" target="_blank"&gt;Register Today!&lt;a href="http://lh6.ggpht.com/_G9Y2atCrYJ4/ScCX_hifrOI/AAAAAAAAAmc/LxihamjqszU/s1600-h/cododn2009badge%5B5%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="98" alt="cododn2009badge" src="http://lh6.ggpht.com/_G9Y2atCrYJ4/ScCYAC5J56I/AAAAAAAAAmo/iOZC4RpZZ7o/cododn2009badge_thumb%5B3%5D.png?imgmax=800" width="198" align="left" border="0" /&gt;&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G9Y2atCrYJ4/ScCV20y-FZI/AAAAAAAAAmU/cIfIS796voU/s1600-h/MSTag_-_Compact_Frame%5B6%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="78" alt="MSTag_-_Compact_Frame" src="http://lh5.ggpht.com/_G9Y2atCrYJ4/ScCV3VdfayI/AAAAAAAAAmY/dBgj-3qKPYQ/MSTag_-_Compact_Frame_thumb%5B4%5D.png?imgmax=800" width="240" align="left" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-1747049184698193587?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=190TFEYJYS0:88hHDC_MJXU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=190TFEYJYS0:88hHDC_MJXU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=190TFEYJYS0:88hHDC_MJXU:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=190TFEYJYS0:88hHDC_MJXU:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=190TFEYJYS0:88hHDC_MJXU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=190TFEYJYS0:88hHDC_MJXU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=190TFEYJYS0:88hHDC_MJXU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/190TFEYJYS0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/190TFEYJYS0/cododn-2009-registration-is-open.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2009/03/cododn-2009-registration-is-open.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-1149702547714694858</guid><pubDate>Tue, 17 Mar 2009 14:47:00 +0000</pubDate><atom:updated>2009-03-17T22:14:38.399-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">software</category><category domain="http://www.blogger.com/atom/ns#">humor</category><category domain="http://www.blogger.com/atom/ns#">funny</category><title>Software Development Trueisms</title><description>A co-worker sent these to me, and I thought they were hilarious and instead of spamming people I thought I would post about it.  &lt;br /&gt;  &lt;ul&gt;   &lt;li&gt;&lt;span&gt;Walking on water and developing software from a specification are easy if both are frozen.&lt;span style="color: rgb(31,73,125)"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;    &lt;li&gt;&lt;span&gt;Program complexity grows until it exceeds the capability of the programmer who must maintain it.&lt;/span&gt;&lt;span style="color: rgb(31,73,125)"&gt;&lt;/span&gt;&lt;/li&gt;    &lt;li&gt;&lt;span&gt;Users don&amp;#8217;t know what they really want, but they will know when they see it&amp;#8230;&lt;span style="color: rgb(31,73,125)"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;    &lt;li&gt;&lt;span&gt;The degree of normality in a database is inversely proportional to that of its DBA.&lt;/span&gt;&lt;/li&gt;    &lt;li&gt;&lt;span&gt;If you work on a program long enough, it will eventually send E-mail.&lt;/span&gt;&lt;/li&gt;    &lt;li&gt;&lt;span&gt;Technology is dominated by two types of people: those who understand what they do not manage, and those who manage what they do not understand.&lt;/span&gt;&lt;/li&gt;    &lt;li&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;If you want software made you have 3 options: You can have it done FAST, you can have it done RIGHT, You can have it done CHEAP. Pick 2.       &lt;br /&gt;&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;&lt;!--&lt;br /&gt;_uacct = "UA-1623622-1";&lt;br /&gt;urchinTracker();&lt;br /&gt;google_ad_client = "pub-9216046320163904";&lt;br /&gt;google_ad_width = 234;&lt;br /&gt;google_ad_height = 60;&lt;br /&gt;google_ad_format = "234x60_as";&lt;br /&gt;google_ad_type = "text";&lt;br /&gt;google_ad_channel = "";&lt;br /&gt;google_ui_features = "rc:6";&lt;br /&gt;//--&gt;&lt;/script&gt;&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"&gt;&lt;/script&gt;&lt;script src="http://googleads.g.doubleclick.net/pagead/test_domain.js"&gt;&lt;/script&gt;&lt;script src="http://pagead2.googlesyndication.com/pagead/render_ads.js"&gt;&lt;/script&gt;&lt;script&gt;&lt;br /&gt;window.google_render_ad();&lt;/script&gt;&lt;iframe name="google_ads_frame" marginwidth="0" marginheight="0" src="http://googleads.g.doubleclick.net/pagead/ads?client=undefined&amp;amp;dt=1237353144846&amp;amp;lmt=1237353137&amp;amp;format=undefinedxundefined&amp;amp;output=html&amp;amp;correlator=1237353144846&amp;amp;url=file%3A%2F%2F%2FC%3A%2FUsers%2FJustinKohnen%2FAppData%2FLocal%2FTemp%2FWindowsLiveWriter-429641856%2F8D1772D913AA%2Findex.htm&amp;amp;ea=0&amp;amp;frm=0&amp;amp;ga_vid=2143766551.1237353148&amp;amp;ga_sid=1237353148&amp;amp;ga_hid=756242395&amp;amp;flash=9.0.124.0&amp;amp;u_h=1050&amp;amp;u_w=1680&amp;amp;u_ah=1050&amp;amp;u_aw=1680&amp;amp;u_cd=32&amp;amp;u_tz=-240&amp;amp;u_java=true&amp;amp;dtd=M" frameborder="0" scrolling="no" allowtransparency="allowtransparency"&gt;&lt;/iframe&gt;&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-1149702547714694858?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=MCskLgUyMZA:FQ4sqk7Ibro:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=MCskLgUyMZA:FQ4sqk7Ibro:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=MCskLgUyMZA:FQ4sqk7Ibro:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=MCskLgUyMZA:FQ4sqk7Ibro:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=MCskLgUyMZA:FQ4sqk7Ibro:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=MCskLgUyMZA:FQ4sqk7Ibro:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=MCskLgUyMZA:FQ4sqk7Ibro:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/MCskLgUyMZA" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/MCskLgUyMZA/software-development-trueisms.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2009/03/software-development-trueisms.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-2513982040410580285</guid><pubDate>Wed, 04 Mar 2009 05:27:00 +0000</pubDate><atom:updated>2009-03-03T21:28:59.258-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">tool</category><category domain="http://www.blogger.com/atom/ns#">scraping</category><category domain="http://www.blogger.com/atom/ns#">CAPTCHA</category><category domain="http://www.blogger.com/atom/ns#">email</category><category domain="http://www.blogger.com/atom/ns#">harvest</category><category domain="http://www.blogger.com/atom/ns#">reCAPTCHA</category><category domain="http://www.blogger.com/atom/ns#">protect</category><title>CAPTCHA Tool for Protecting Email Addresses</title><description>&lt;p&gt;This post is a continuation of my previous post. &amp;quot;&lt;a title="Some tips and tricks to prevent Email Harvesting / Scraping" href="http://bouncetadiss.blogspot.com/2008/07/some-tips-and-tricks-to-prevent-email.html" target="_blank"&gt;Some tips and tricks to prevent Email Harvesting / Scraping&lt;/a&gt;&amp;quot;&lt;/p&gt;  &lt;p&gt;One of the techniques I mentioned was an &amp;quot;Anti-bot&amp;quot; process and I made reference to the Google Groups CAPTCHA design.&lt;/p&gt;  &lt;p&gt;Today I found out that &lt;a href="http://recaptcha.net/" target="_blank"&gt;reCAPTCHA.net&lt;/a&gt; offers the same service for free. It's called Mailhide&lt;/p&gt;  &lt;p&gt;Just browse out to &lt;a title="http://mailhide.recaptcha.net/" href="http://mailhide.recaptcha.net/"&gt;http://mailhide.recaptcha.net/&lt;/a&gt;, supply an email address, and they will provide you with HTML you can use to mask your email.&lt;/p&gt;  &lt;h5&gt;Here's the process with pretty pictures&lt;/h5&gt;  &lt;p&gt;Providing an email address.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G9Y2atCrYJ4/Sa4RJIshL-I/AAAAAAAAAhs/JVpVAEbFQuU/s1600-h/2009-03-04_0014%5B7%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="323" alt="2009-03-04_0014" src="http://lh4.ggpht.com/_G9Y2atCrYJ4/Sa4RJzO6IMI/AAAAAAAAAhw/GZt8TrXMpuY/2009-03-04_0014_thumb%5B3%5D.png?imgmax=800" width="441" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The generated HTML&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G9Y2atCrYJ4/Sa4RKw7bUFI/AAAAAAAAAh0/ZMi_lQ3-VhA/s1600-h/2009-03-04_0016%5B4%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="366" alt="2009-03-04_0016" src="http://lh6.ggpht.com/_G9Y2atCrYJ4/Sa4RLuS1nPI/AAAAAAAAAh4/NYN6EXTLpsI/2009-03-04_0016_thumb%5B2%5D.png?imgmax=800" width="445" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Once the HTML is embedded, clicking the &amp;quot;...&amp;quot; gives you&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_G9Y2atCrYJ4/Sa4RMFWmMXI/AAAAAAAAAh8/CK1qQLBRqgg/s1600-h/2009-03-04_0018%5B3%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="240" alt="2009-03-04_0018" src="http://lh3.ggpht.com/_G9Y2atCrYJ4/Sa4RMqAymFI/AAAAAAAAAiA/RDA_SoVtFBE/2009-03-04_0018_thumb%5B1%5D.png?imgmax=800" width="385" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;When you provide the correct input you get&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G9Y2atCrYJ4/Sa4RM5oRm_I/AAAAAAAAAiE/iowza_TQnJY/s1600-h/2009-03-04_0018_001%5B5%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="247" alt="2009-03-04_0018_001" src="http://lh6.ggpht.com/_G9Y2atCrYJ4/Sa4RNXGu1vI/AAAAAAAAAiI/tkbpkmfkk7g/2009-03-04_0018_001_thumb%5B3%5D.png?imgmax=800" width="383" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h5&gt;Pretty cool huh?&lt;/h5&gt;  &lt;p&gt;Give it a try yourself: User&lt;a title="Reveal this e-mail address" onclick="window.open(&amp;#39;http://mailhide.recaptcha.net/d?k=01VO7sTdFsGVoH6ksSRl3XLg==&amp;amp;c=cd6koPxHIEMRf-wlNpYifuiTkuqMoHQqVVUZJVAWNx8=&amp;#39;, &amp;#39;&amp;#39;, &amp;#39;toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=500,height=300&amp;#39;); return false;" href="http://mailhide.recaptcha.net/d?k=01VO7sTdFsGVoH6ksSRl3XLg==&amp;amp;c=cd6koPxHIEMRf-wlNpYifuiTkuqMoHQqVVUZJVAWNx8="&gt;...&lt;/a&gt;@Domain.com&lt;/p&gt;  &lt;p&gt;They also have an API available if you want to do the same process in bulk.&lt;/p&gt;  &lt;p&gt;Happy coding.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-2513982040410580285?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=SrOaLIYImA0:SiIuSWHeE-8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=SrOaLIYImA0:SiIuSWHeE-8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=SrOaLIYImA0:SiIuSWHeE-8:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=SrOaLIYImA0:SiIuSWHeE-8:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=SrOaLIYImA0:SiIuSWHeE-8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=SrOaLIYImA0:SiIuSWHeE-8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=SrOaLIYImA0:SiIuSWHeE-8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/SrOaLIYImA0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/SrOaLIYImA0/captcha-tool-for-protecting-email.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2009/03/captcha-tool-for-protecting-email.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-4251087968599441447</guid><pubDate>Sun, 01 Mar 2009 19:26:00 +0000</pubDate><atom:updated>2009-03-01T11:35:24.709-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">IDE</category><category domain="http://www.blogger.com/atom/ns#">ESXi</category><category domain="http://www.blogger.com/atom/ns#">virtualization</category><category domain="http://www.blogger.com/atom/ns#">vmware</category><title>Virtualization: My experience installing VMware ESXi 3.5.0</title><description>&lt;h5&gt;What is &lt;a href="http://www.vmware.com/products/esxi/" target="_blank"&gt;VMware Server ESXi&lt;/a&gt;? &lt;/h5&gt;  &lt;p&gt;When you're using visualization usually you need a host operating system that your virtual machines (VM's) will run on top of. With ESXi, the need for a host OS is removed.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_G9Y2atCrYJ4/SarhTKuvjjI/AAAAAAAAAhU/HEYHqySohnk/s1600-h/2009-03-01_1405%5B4%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="298" alt="2009-03-01_1405" src="http://lh4.ggpht.com/_G9Y2atCrYJ4/SarhUDpN2oI/AAAAAAAAAhY/cylB9K2W9jg/2009-03-01_1405_thumb%5B2%5D.png?imgmax=800" width="433" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;quot;With a General Purpose OS, the VM's are only as reliable as the host OS. So if the host OS crashes or needs to be patched all the VM's on the machine are affected.&amp;quot; ESXi removes these problems. In addition ESXi only has a 32MB footprint, therefore using less resources and having a smaller surface area for attack.&lt;/p&gt;  &lt;p&gt;If you want to learn more, check out the &lt;a href="http://download3.vmware.com/demos/esxi/VMware_ESXi.html" target="_blank"&gt;VMware ESXi Online Demo&lt;/a&gt;.&lt;/p&gt;  &lt;h5&gt;Now let's begin my experience installing ESXi 3.5&lt;/h5&gt;  &lt;h6&gt;Installation&lt;/h6&gt;  &lt;p&gt;First problem I ran into was trying to get the installer to actually run. I kept getting an error when the installer tried to start, &amp;quot;&lt;em&gt;Unable to find a supported device to write the VMware ESX&lt;/em&gt;.&amp;quot; Turns out, VMware ESXi won't install to an IDE hard drive with it's standard configuration. After some Googling I found a post in VMware's community forum which pointed me to the solution to my problem.&lt;/p&gt;  &lt;p&gt;&amp;quot;&lt;a href="http://www.vm-help.com/esx/esx3i/ESXi_install_to_IDE_drive/ESXi_install_to_IDE_drive.php" target="_blank"&gt;Install ESXi 3.5 to an IDE drive&lt;/a&gt;&amp;quot;&lt;/p&gt;  &lt;p&gt;Now I was able to successfully complete the rest of the install process.&lt;/p&gt;  &lt;h6&gt;Configuration&lt;/h6&gt;  &lt;p&gt;Second problem I hit was when I was trying to configure the &amp;quot;Management Network&amp;quot;. I wanted to give a static IP address to my ESXi server. Every time I tried to enter the menu I was repeatedly asked to &amp;quot;Restore network factory settings.&amp;quot; This time I learned the config menu does weird things if it encounters hardware it doesn't support. (In this case my motherboard's onboard NIC.) Google and Expert Exchange helped me find this answer.&lt;/p&gt;  &lt;p&gt;&amp;quot;&lt;a href="http://www.vm-help.com/esx/esx3i/Hardware_support.php" target="_blank"&gt;What storage and network devices will ESXi 3.5 recognize?&lt;/a&gt;&amp;quot;&lt;/p&gt;  &lt;p&gt;I installed a different NIC and was able to successfully complete the the rest of the configuration process.&lt;/p&gt;  &lt;h6&gt;Client Installation&lt;/h6&gt;  &lt;p&gt;I then connected to my new ESXi's IP via http in a web browser, and downloaded/installed the &amp;quot;VMware Infrastructure Client&amp;quot;. (This thru me for a loop too, the install manual never said how you got a copy of the infrastructure client.)&lt;/p&gt;  &lt;h6&gt;Adding a storage device&lt;/h6&gt;  &lt;p&gt;The next hurdle I had to jump was when I tried to add my WAMP VM via the &amp;quot;Import a virtual appliance&amp;quot; feature. The moment I would click on the feature, I would get an error &amp;quot;&lt;em&gt;Index was out of range. Must be non-negative and less then the size of the collection. Parameter name:index&lt;/em&gt;&amp;quot;&lt;/p&gt;  &lt;p&gt;This error I figured out by poking around. The problem was because I didn't have a data source configured yet. I had to configure one thru the &amp;quot;Configuration&amp;quot; tab. Heh, go figure. :-P (Once again, something the installation manual kinda missed.)&lt;/p&gt;  &lt;p&gt;So I put the server in &amp;quot;Maintenance Mode&amp;quot; and did the following.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_G9Y2atCrYJ4/SarhUvwSkvI/AAAAAAAAAhc/8fSeXHNxblU/s1600-h/2009-02-28_1915%5B4%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="253" alt="2009-02-28_1915" src="http://lh3.ggpht.com/_G9Y2atCrYJ4/SarhVch_MOI/AAAAAAAAAhg/j5A8B2XNO_w/2009-02-28_1915_thumb%5B2%5D.png?imgmax=800" width="427" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Once I was done, I brought the server back out of &amp;quot;Maintenance Mode,&amp;quot; and the error was gone.&lt;/p&gt;  &lt;h6&gt;Importing a Virtual Machine&lt;/h6&gt;  &lt;p&gt;Justin, so you're done right? Well almost, yes my server was ready, but I still needed to add my VM to it. The last issue I ran into was when I again tried to import my WAMP VM using the &amp;quot;Import a virtual appliance&amp;quot; feature. The WAMP VM is a &lt;a href="http://www.vmware.com/products/ws/" target="_blank"&gt;VMware Workstation&lt;/a&gt; VM, and Workstation VM's are not compatible with VMware Server ESXi. &lt;/p&gt;  &lt;p&gt;To solve this problem I had to use another tool from VMware. The &lt;a href="http://www.vmware.com/products/converter/" target="_blank"&gt;VMware vCenter Converter&lt;/a&gt;. I used the &amp;quot;Import Machine&amp;quot; feature of the converter to import my Workstation VM into my ESXi server.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_G9Y2atCrYJ4/SarhWtQPvZI/AAAAAAAAAhk/Q7IMRYwEcfY/s1600-h/2009-03-01_1357%5B4%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="344" alt="2009-03-01_1357" src="http://lh4.ggpht.com/_G9Y2atCrYJ4/SarhXQismdI/AAAAAAAAAho/5fxF7fk1frs/2009-03-01_1357_thumb%5B2%5D.png?imgmax=800" width="445" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;After the conversion/import process was done, SUCCESS!!! I now have my WAMP VM running on my ESXi server. &lt;/p&gt;  &lt;p&gt;Now wasn't that easy?&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-4251087968599441447?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Xs-NjLT43mo:pXdaTmDp8Pk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=Xs-NjLT43mo:pXdaTmDp8Pk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Xs-NjLT43mo:pXdaTmDp8Pk:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=Xs-NjLT43mo:pXdaTmDp8Pk:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Xs-NjLT43mo:pXdaTmDp8Pk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Xs-NjLT43mo:pXdaTmDp8Pk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Xs-NjLT43mo:pXdaTmDp8Pk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/Xs-NjLT43mo" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/Xs-NjLT43mo/virtualization-my-experience-installing.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2009/03/virtualization-my-experience-installing.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-8490818941572953677</guid><pubDate>Wed, 10 Dec 2008 20:17:00 +0000</pubDate><atom:updated>2008-12-10T12:23:00.542-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">visual studio</category><category domain="http://www.blogger.com/atom/ns#">developer</category><category domain="http://www.blogger.com/atom/ns#">tools</category><category domain="http://www.blogger.com/atom/ns#">resharper</category><category domain="http://www.blogger.com/atom/ns#">code</category><title>Where can I download old versions of JetBrains' ReShaper?</title><description>Often times I've tried to find old version of JetBrain's amazing tool ReSharper (R#). Usually I have to settle with some download site. Which makes me feel a little uneasy. The other day I found the JetBrains' provided link. So I figured I would share with the world.&lt;br /&gt;&lt;a href="http://www.jetbrains.net/devnet/docs/DOC-280;jsessionid=3B8C7B3BA56CA355357DE8E5437485E9"&gt;&lt;br /&gt;http://www.jetbrains.net/devnet/docs/DOC-280;jsessionid=3B8C7B3BA56CA355357DE8E5437485E9&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-8490818941572953677?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=R1umz6QKgMA:Fx8q4hSL2Og:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=R1umz6QKgMA:Fx8q4hSL2Og:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=R1umz6QKgMA:Fx8q4hSL2Og:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=R1umz6QKgMA:Fx8q4hSL2Og:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=R1umz6QKgMA:Fx8q4hSL2Og:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=R1umz6QKgMA:Fx8q4hSL2Og:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=R1umz6QKgMA:Fx8q4hSL2Og:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/R1umz6QKgMA" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/R1umz6QKgMA/where-can-i-download-old-versions-of.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/12/where-can-i-download-old-versions-of.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-6247323739620406120</guid><pubDate>Tue, 04 Nov 2008 02:51:00 +0000</pubDate><atom:updated>2008-11-03T19:00:51.678-08:00</atom:updated><title>The "var" keyword works in .NET 2.0?</title><description>&lt;p&gt;Just the other day I installed &lt;a href="http://www.jetbrains.com/resharper/index.html" target="_blank"&gt;Resharper&lt;/a&gt; 4.1 into my copy of Visual Studio 2008. Once I loaded my .NET 2.0 web application Resharper started suggesting I replace my variable type declarations with &amp;quot;var&amp;quot;!&lt;/p&gt;  &lt;p&gt;What's this? Isn't &amp;quot;var&amp;quot; a C# 3.0 (.NET 3.5 Framework) feature? &lt;/p&gt;  &lt;p&gt;So for giggles I swapped int for var and did a solution build (Ctrl + Shift + B). &lt;/p&gt;  &lt;p&gt;NO ERRORS!&lt;/p&gt;  &lt;p&gt;I ran the web application.&lt;/p&gt;  &lt;p&gt;NO ERRORS!&lt;/p&gt;  &lt;p&gt;So I posed a &lt;a href="http://twitter.com/JustinKohnen/status/984333915" target="_blank"&gt;question&lt;/a&gt; to my &lt;a href="http://www.twitter.com" target="_blank"&gt;twitter&lt;/a&gt; friends.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Why is my C# project for 2.0 framework, compiling fine with &amp;quot;var&amp;quot;?&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Turns out, it's all Visual Studio 2008 slight of hand. As &lt;a href="http://twitter.com/skimedic/status/984339164" target="_blank"&gt;Phil Japikse says&lt;/a&gt;:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;@&lt;a href="http://twitter.com/JustinKohnen"&gt;JustinKohnen&lt;/a&gt; it's syntactic sugar in VS2008. If you look at the IL, it compiles down to 2.0 compatible code.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Isn't that interesting? You can also use automatic properties, and object initializers too! After Phil opened my eyes, he wrote a great &lt;a href="http://japikse.blogspot.com/2008/10/visual-studio-2008-compiler-tricks.html" target="_blank"&gt;blog post&lt;/a&gt; about these &lt;a href="http://japikse.blogspot.com/2008/10/visual-studio-2008-compiler-tricks.html" target="_blank"&gt;Visual Studio 2008 Compiler Tricks&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;A thanks to &lt;a href="http://japikse.blogspot.com/" target="_blank"&gt;Phil Japikse&lt;/a&gt;, &lt;a href="http://twitter.com/fallenrogue" target="_blank"&gt;Leon&lt;/a&gt;, and &lt;a href="http://twitter.com/MattBrewer" target="_blank"&gt;Matt Brewer&lt;/a&gt; for the help. &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-6247323739620406120?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=kzPac4Su5pA:herF6SZjnv4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=kzPac4Su5pA:herF6SZjnv4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=kzPac4Su5pA:herF6SZjnv4:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=kzPac4Su5pA:herF6SZjnv4:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=kzPac4Su5pA:herF6SZjnv4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=kzPac4Su5pA:herF6SZjnv4:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=kzPac4Su5pA:herF6SZjnv4:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/kzPac4Su5pA" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/kzPac4Su5pA/keyword-works-in-net-20.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/11/keyword-works-in-net-20.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-6904927571401671662</guid><pubDate>Fri, 22 Aug 2008 20:27:00 +0000</pubDate><atom:updated>2008-08-22T15:06:08.312-07:00</atom:updated><title>FYI: I'm changing my feed URL</title><description>&lt;p&gt;I just wanted to give my RSS people a heads up. Some time in the next few months I will be shutting down my old feed URL.&lt;/p&gt;  &lt;p&gt;My new URL is:    &lt;br /&gt;&lt;a href="http://feeds.feedburner.com/JustinKohnen"&gt;http://feeds.feedburner.com/JustinKohnen&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Please switch over when you get a chance. I'd hate to lose you as a reader. &lt;/p&gt;  &lt;p&gt;Kindest Regards,    &lt;br /&gt;Justin Kohnen, Geek&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-6904927571401671662?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=evGW3lx-rcc:7SaPibQE3r8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=evGW3lx-rcc:7SaPibQE3r8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=evGW3lx-rcc:7SaPibQE3r8:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=evGW3lx-rcc:7SaPibQE3r8:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=evGW3lx-rcc:7SaPibQE3r8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=evGW3lx-rcc:7SaPibQE3r8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=evGW3lx-rcc:7SaPibQE3r8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/evGW3lx-rcc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/evGW3lx-rcc/fyi-i-changing-my-feed-url.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/08/fyi-i-changing-my-feed-url.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-6842743494257226982</guid><pubDate>Tue, 12 Aug 2008 03:59:00 +0000</pubDate><atom:updated>2008-08-12T07:11:15.863-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">download</category><category domain="http://www.blogger.com/atom/ns#">ie</category><category domain="http://www.blogger.com/atom/ns#">FireFox</category><category domain="http://www.blogger.com/atom/ns#">style</category><category domain="http://www.blogger.com/atom/ns#">css</category><category domain="http://www.blogger.com/atom/ns#">browser</category><title>When do browsers download images defined in Cascading Style Sheets?</title><description>&lt;p&gt;Just the other day I was talking with a coworker about ASP.NET Themes. We were addressing a question about putting multiple Cascading Style Sheets (CSS) into a theme. &lt;/p&gt;  &lt;p&gt;Unless you do something special, ASP.NET Themes adds a link reference to every CSS file in the theme directory. We were fine with this behavior even if the styles weren't used by the page, but what about all the background images defined in the style sheets?&lt;/p&gt;  &lt;p&gt;Here's where we asked the question &amp;quot;When do browsers download images defined in Cascading Style Sheets?&amp;quot;&lt;/p&gt;  &lt;h4&gt;Here are my findings:&lt;/h4&gt;  &lt;p&gt;Both &lt;a href="http://www.microsoft.com/windows/products/winfamily/ie/default.mspx" target="_blank"&gt;Internet Explorer 7&lt;/a&gt; and &lt;a href="http://www.mozilla.com/en-US/firefox/" target="_blank"&gt;FireFox 3.0&lt;/a&gt; do not download an image unless the style is used on an element of the page. &lt;/p&gt;  &lt;h5&gt;For Example:&lt;/h5&gt;  &lt;p&gt;Consider a style sheet called style.css which containes&lt;/p&gt;  &lt;pre&gt;.image&lt;br /&gt;{&lt;br /&gt; background:transparent url(testImage.png);&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;If you have a html file which contains:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;html&amp;gt;&lt;br /&gt;  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;head&amp;gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;link type=&amp;quot;text/css&amp;quot; rel=&amp;quot;stylesheet&amp;quot; media=&amp;quot;screen, projection&amp;quot; href=&amp;quot;style.css&amp;quot;&amp;gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/head&amp;gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;body&amp;gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;p&amp;gt;Hello World&amp;lt;/p&amp;gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/body&amp;gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&amp;lt;/html&amp;gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;There will be two requests to the server: html, and css&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;If you have a html file which contains:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;html&amp;gt;&lt;br /&gt;  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;head&amp;gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;link type=&amp;quot;text/css&amp;quot; rel=&amp;quot;stylesheet&amp;quot; media=&amp;quot;screen, projection&amp;quot; href=&amp;quot;style.css&amp;quot;&amp;gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/head&amp;gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;body&lt;strong&gt; class=&amp;quot;image&amp;quot;&lt;/strong&gt;&amp;gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;p&amp;gt;Hello World&amp;lt;/p&amp;gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/body&amp;gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&amp;lt;/html&amp;gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;There will be three requests to the server: html, css, and png&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;I tested using &lt;a href="http://www.mozilla.com/en-US/firefox/" target="_blank"&gt;FireFox 3.0&lt;/a&gt; with &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/1843" target="_blank"&gt;FireBug&lt;/a&gt; (HEH HEH, FIRE!), and &lt;a href="http://www.microsoft.com/windows/products/winfamily/ie/default.mspx" target="_blank"&gt;Internet Explorer 7&lt;/a&gt; and &lt;a href="http://www.fiddlertool.com/fiddler/" target="_blank"&gt;Fiddler&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-6842743494257226982?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=vCRfuAAZvCE:C7c8wUBK-lc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=vCRfuAAZvCE:C7c8wUBK-lc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=vCRfuAAZvCE:C7c8wUBK-lc:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=vCRfuAAZvCE:C7c8wUBK-lc:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=vCRfuAAZvCE:C7c8wUBK-lc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=vCRfuAAZvCE:C7c8wUBK-lc:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=vCRfuAAZvCE:C7c8wUBK-lc:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/vCRfuAAZvCE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/vCRfuAAZvCE/when-do-browsers-download-images.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/08/when-do-browsers-download-images.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-5793525228046868487</guid><pubDate>Sat, 09 Aug 2008 02:55:00 +0000</pubDate><atom:updated>2008-08-11T06:16:23.951-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">visual studio</category><category domain="http://www.blogger.com/atom/ns#">process</category><category domain="http://www.blogger.com/atom/ns#">keyboard</category><category domain="http://www.blogger.com/atom/ns#">tip</category><category domain="http://www.blogger.com/atom/ns#">.net</category><category domain="http://www.blogger.com/atom/ns#">ASP.NET</category><category domain="http://www.blogger.com/atom/ns#">attach</category><category domain="http://www.blogger.com/atom/ns#">web</category><category domain="http://www.blogger.com/atom/ns#">shortcut</category><category domain="http://www.blogger.com/atom/ns#">trick</category><title>ASP.NET Development Tips/Tricks: Using "Attach to Process..."</title><description>&lt;p&gt;I wanted to save this tip for later but I think it's too important to hold back. The one action of attaching to a process will save you minutes, that's right MINUTES, in your daily tasks.&lt;/p&gt;  &lt;p&gt;You might have noticed in &lt;a href="http://bouncetadiss.blogspot.com/2008/08/aspnet-development-tipstricks-know-your.html" target="_blank"&gt;my last post about Keyboard Shortcuts&lt;/a&gt; I never mentioned the F5 key. That's because I never use it. &lt;/p&gt;  &lt;p&gt;The F5 key is commonly used to &amp;quot;Start Debugging.&amp;quot; Let's take a moment to walk thru what happens when you press F5. (Or click the green play button, or thru the menu Debug &amp;gt; Start Debugging)&lt;/p&gt;  &lt;h4&gt;&lt;a href="http://lh3.ggpht.com/jkohnen/SJ0HHBFZvZI/AAAAAAAAAEE/e69ZOIzW1iw/s1600-h/2008-08-08_2244%5B3%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="220" alt="2008-08-08_2244" src="http://lh6.ggpht.com/jkohnen/SJ0HHuSOfJI/AAAAAAAAAEI/F4um8UPFOFQ/2008-08-08_2244_thumb%5B1%5D.png?imgmax=800" width="244" align="right" border="0" /&gt;&lt;/a&gt;The F5 Way &lt;/h4&gt;  &lt;ol&gt;   &lt;li&gt; First, Visual Studio (VS) will build your startup project. &lt;/li&gt;    &lt;li&gt;Second, VS opens an instance of your configured browser and attaches to the browser's process. &lt;/li&gt;    &lt;li&gt;Third, VS will direct the browser to the start page of your start-up project. &lt;/li&gt;    &lt;li&gt;Forth, VS finally attaches to the process hosting ASP.NET &lt;/li&gt;    &lt;ol&gt;     &lt;li&gt;w3wp.exe if you use IIS6&lt;/li&gt;      &lt;li&gt;aspnetwp.exe if you used IIS 5.5&lt;/li&gt;      &lt;li&gt;WebDev.WebServer.exe if you use the ASP.NET Development Server that comes with Visual Studio.&lt;/li&gt;   &lt;/ol&gt; &lt;/ol&gt;  &lt;p&gt;Now, lets assume you want to debug some new administrative feature you've added to your web application. After all of the &amp;quot;F5&amp;quot; steps, most likely you:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Fifth, start on your start page (I'll assume Default.aspx)&lt;/li&gt;    &lt;li&gt;Sixth, click on the Login link&lt;/li&gt;    &lt;li&gt;Seventh, login with Username and Password&lt;/li&gt;    &lt;li&gt;Eighth, browse to the Administration page with the feature you want to test&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Now, lets assume you have a bug in your code.&amp;#160; Your next step might be:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Ninth, close the browser&lt;/li&gt;    &lt;li&gt;Tenth, change the code to fix the bug&lt;/li&gt;    &lt;li&gt;Goto First&lt;/li&gt; &lt;/ol&gt;  &lt;h4&gt;The &amp;quot;Attach to Process...&amp;quot; Way&lt;a href="http://lh4.ggpht.com/jkohnen/SJ0HIBn2KYI/AAAAAAAAAEM/DRzyCfby3So/s1600-h/atp%5B4%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="187" alt="atp" src="http://lh6.ggpht.com/jkohnen/SJ0HIYA3oEI/AAAAAAAAAEQ/KbRzjLvoBQ4/atp_thumb%5B2%5D.png?imgmax=800" width="240" align="right" border="0" /&gt;&lt;/a&gt;&amp;#160;&lt;/h4&gt;  &lt;p&gt;So, how can &amp;quot;Attach to process... &amp;quot; save you minutes? By not repeating the Second, Third, Fifth, Sixth, Seventh, Eighth, and Ninth steps from above.&lt;/p&gt;  &lt;p&gt;Here is the process I use:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Once per day:&lt;/strong&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Open Browser&lt;/li&gt;    &lt;li&gt;Browse to development website &lt;/li&gt;    &lt;ol&gt;     &lt;li&gt;If Root: (&lt;a href="http://localhost"&gt;http://localhost&lt;/a&gt;)&lt;/li&gt;      &lt;li&gt;If Virtual Directory: (&lt;a href="http://localhost/vDirectory"&gt;http://localhost/vDirectory&lt;/a&gt;)&lt;/li&gt;   &lt;/ol&gt;    &lt;li&gt;Click Login link&lt;/li&gt;    &lt;li&gt;Login with Username and Password&lt;/li&gt;    &lt;li&gt;Browse to the Administration page where the new feature will be&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;That's right, I usually only do these 5 steps once a day. &lt;/p&gt;  &lt;p&gt;Now, I write my new administrative feature. Then, it comes time to test my changes.&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;lt;note&amp;gt;     &lt;br /&gt;&lt;/em&gt;&lt;em&gt;This is where my first three common &amp;quot;walks&amp;quot; of &lt;a href="http://bouncetadiss.blogspot.com/2008/08/aspnet-development-tipstricks-know-your.html" target="_blank"&gt;my last post&lt;/a&gt; become important.      &lt;br /&gt;&amp;lt;/note&amp;gt;&lt;/em&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;First, build the current web project if needed.&lt;/li&gt;    &lt;ol&gt;     &lt;li&gt;(Alt, B, U)&lt;/li&gt;   &lt;/ol&gt;    &lt;li&gt;Second, attach to process hosting ASP.NET. &lt;/li&gt;    &lt;ol&gt;     &lt;li&gt;w3wp.exe (Alt, D, P, W 3, Enter)&lt;/li&gt;      &lt;li&gt;aspnetwp.exe (Alt, D, P, A S P, Enter)&lt;/li&gt;      &lt;li&gt;WebDev.WebServer.exe (Alt, D, P, W E B, Enter)&lt;/li&gt;   &lt;/ol&gt;    &lt;li&gt;Third, switch to the open browser &lt;/li&gt;    &lt;ol&gt;     &lt;li&gt;(Alt+Tab)&lt;/li&gt;   &lt;/ol&gt;    &lt;li&gt;Fourth, refresh page as appropriate &lt;/li&gt;    &lt;ol&gt;     &lt;li&gt;(F5 or Ctrl+F5 or Alt+D, Enter)&lt;/li&gt;   &lt;/ol&gt; &lt;/ol&gt;  &lt;p&gt;Lets assume there is a bug in my new code. (I know it's hard to believe, but just for giggles lets assume.)&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Fifth, detach from the process hosting ASP.NET &lt;/li&gt;    &lt;ol&gt;     &lt;li&gt;(Alt, D, D, [&lt;em&gt;sometimes&lt;/em&gt; Enter])&lt;/li&gt;   &lt;/ol&gt;    &lt;li&gt;Sixth, change the code to fix the bug&lt;/li&gt;    &lt;li&gt;Goto First&lt;/li&gt; &lt;/ol&gt;  &lt;h4&gt;Conclusion&lt;/h4&gt;  &lt;p&gt;By using &amp;quot;Attach to Process...&amp;quot; we save ourselves repeatedly launching and closing the browser, the login process, and the preliminary navigational steps to get to the code we want to test. These actions which took minutes and were repeated with every &amp;quot;F5&amp;quot; now are only done once.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-5793525228046868487?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=QdSaRh0ct4M:AL45Dm4I8LM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=QdSaRh0ct4M:AL45Dm4I8LM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=QdSaRh0ct4M:AL45Dm4I8LM:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=QdSaRh0ct4M:AL45Dm4I8LM:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=QdSaRh0ct4M:AL45Dm4I8LM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=QdSaRh0ct4M:AL45Dm4I8LM:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=QdSaRh0ct4M:AL45Dm4I8LM:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/QdSaRh0ct4M" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/QdSaRh0ct4M/aspnet-development-tipstricks-using-to.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/08/aspnet-development-tipstricks-using-to.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-200874597736301246</guid><pubDate>Thu, 07 Aug 2008 02:33:00 +0000</pubDate><atom:updated>2008-08-06T19:33:29.101-07:00</atom:updated><title>For the lovers of techno and "The Orange Box: Portal"</title><description>&lt;p&gt;I'm a developer that cannot code without music. &lt;a href="http://www.di.fm/mp3/eurodance.pls" target="_blank"&gt;Euro Dance Techno&lt;/a&gt; from &lt;a href="http://www.di.fm" target="_blank"&gt;di.fm&lt;/a&gt; is this ninja's weapon of choice. I don't think I could work for a company that didn't let me have &lt;a href="http://www.headphone.com/products/headphones/all-headphones/sennheiser-hd-202.php" target="_blank"&gt;my headphones&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Just the other day I can across a &lt;a title="zip of mp3" href="http://www.raddox.net/mp3/files/Portal_-_Still_Alive_Raddox_Remix.zip" target="_blank"&gt;remix&lt;/a&gt; of &amp;quot;&lt;a title="You Tube Video" href="http://www.youtube.com/watch?v=RthZgszykLs" target="_blank"&gt;Still Alive&lt;/a&gt;&amp;quot; from the credits of &amp;quot;Portal&amp;quot; the video game. (Part of &lt;a href="http://www.amazon.com/gp/redirect.html?ie=UTF8&amp;amp;location=http%3A%2F%2Fwww.amazon.com%2FValve-The-Orange-Box%2Fdp%2FB000PS2XES%3Fie%3DUTF8%26s%3Dvideogames%26qid%3D1218074817%26sr%3D8-1&amp;amp;tag=kohnesolut-20&amp;amp;linkCode=ur2&amp;amp;camp=1789&amp;amp;creative=9325"&gt;The Orange Box&lt;/a&gt;).&lt;/p&gt;  &lt;p&gt;I wanted to give a shout out to &lt;a href="http://www.raddox.net" target="_blank"&gt;Raddox&lt;/a&gt; for his mix, and let others know about some of his other awesome work. Namely, &amp;quot;&lt;a href="http://www.raddox.net/mp3/files/Raddox%20-%20I'll%20follow%20you%20there.mp3" target="_blank"&gt;I'll Follow You There&lt;/a&gt;,&amp;quot; and the amazing &amp;quot;&lt;a href="http://www.raddox.net/mp3/files/when_I_was_a_child.zip" target="_blank"&gt;When I Was a Child&lt;/a&gt;.&amp;quot;&lt;/p&gt;  &lt;p&gt;Happy coding to all.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-200874597736301246?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=fFXCCAS1Uco:k1s-4_KEhu8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=fFXCCAS1Uco:k1s-4_KEhu8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=fFXCCAS1Uco:k1s-4_KEhu8:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=fFXCCAS1Uco:k1s-4_KEhu8:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=fFXCCAS1Uco:k1s-4_KEhu8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=fFXCCAS1Uco:k1s-4_KEhu8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=fFXCCAS1Uco:k1s-4_KEhu8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/fFXCCAS1Uco" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/fFXCCAS1Uco/for-lovers-of-techno-and-orange-box.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/08/for-lovers-of-techno-and-orange-box.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-9072515470611819528</guid><pubDate>Mon, 04 Aug 2008 23:06:00 +0000</pubDate><atom:updated>2008-08-08T19:57:39.745-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">visual studio</category><category domain="http://www.blogger.com/atom/ns#">keyboard</category><category domain="http://www.blogger.com/atom/ns#">tip</category><category domain="http://www.blogger.com/atom/ns#">ASP.NET</category><category domain="http://www.blogger.com/atom/ns#">menu</category><category domain="http://www.blogger.com/atom/ns#">trick</category><title>ASP.NET Development Tips/Tricks : Know your Keyboard</title><description>&lt;p&gt;I've thought for a while about what tip I wanted to start with. I decided to begin with the keyboard because I'll mention what shortcuts I use in all future tricks.&lt;/p&gt;  &lt;p&gt;I don't want to get into a debate of which is better &amp;quot;the keyboard&amp;quot; or &amp;quot;the mouse&amp;quot;, (personally I use one to compliment the other) but there are a some things about your keyboard and Visual Studio (VS) that can shave a few seconds off your common daily tasks. I like to call these two tips &amp;quot;VS Keyboard Shortcuts&amp;quot; and &amp;quot;Walking the Menus.&amp;quot;&lt;/p&gt;  &lt;h4&gt;VS Keyboard Shortcuts&lt;/h4&gt;  &lt;p&gt;Everyone should know &lt;a href="http://msdn.microsoft.com/en-us/library/kcc7tke7(VS.71).aspx"&gt;Visual Studio IDE largely relies&lt;/a&gt; on the &lt;a href="http://en.wikipedia.org/wiki/Command_pattern"&gt;Command Pattern&lt;/a&gt;. Nearly every action in VS can be performed by a command, and most Add-ins rely on the command pattern too.&lt;/p&gt;  &lt;p&gt;What does this give us? Two words: &amp;quot;Keyboard&amp;quot; &amp;quot;Shortcuts.&amp;quot; You can essentially tie any command (save, build, copy) to a key combination.&amp;#160; These settings are controlled in the keyboard options dialog.&lt;/p&gt;  &lt;p&gt;Tools &amp;gt; Options &amp;gt; Environment &amp;gt; Keyboard&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/jkohnen/SJeLXVOAAqI/AAAAAAAAADs/xxRx0o8boJ4/s1600-h/2008-07-30_1911%5B4%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="279" alt="2008-07-30_1911" src="http://lh6.ggpht.com/jkohnen/SJeLXwBbPiI/AAAAAAAAADw/4ZfQoFHn2ak/2008-07-30_1911_thumb%5B2%5D.png?imgmax=800" width="452" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;In this dialog you can lookup all the commands, and assign key combinations to them. &lt;/p&gt;  &lt;p&gt;If you see a command with a comma (',') in it, this means you pause. &lt;/p&gt;  &lt;p&gt;For example &amp;quot;Ctrl+K, Ctrl+K&amp;quot; means hit &amp;quot;Ctrl+K&amp;quot; pause hit &amp;quot;Ctrl+K&amp;quot; again. Or, hold down the &amp;quot;Ctrl&amp;quot; key and hit the &amp;quot;K&amp;quot; key twice.&lt;/p&gt;  &lt;p&gt;Some of the most common VS shortcuts I use are:&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="2" width="400" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+X&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Cut&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+C&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Copy&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+V&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Paste&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+Z&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Undo&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+Shift+Z&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Redo&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+S&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Save&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+G&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Go to line&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+Shift+B&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Build Entire Solution&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+K, Ctrl+K&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Add/Remove Bookmark&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+K, Ctrl+P&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Go to Previous Bookmark&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+K, Ctrl+N&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Go to Next Bookmark&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+M, Ctrl+O&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Collapse all (regions, methods, etc.)&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+M, Ctrl+P&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Expand All (regions, methods, etc.)&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+M, Ctrl+M&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Collapse/Expand Current&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+K, Ctrl+C&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Comment out Current Line or Selection&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+K, Ctrl+U&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Uncomment Current Line or Selection&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;F9&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Add/Remove a breakpoint on the current line&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;Most of the common commands appear in the menus for quick reference. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/jkohnen/SJeLYRuAGxI/AAAAAAAAAD0/sIp73DQkixc/s1600-h/2008-07-31_1830%5B5%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="501" alt="2008-07-31_1830" src="http://lh3.ggpht.com/jkohnen/SJeLZAQrgmI/AAAAAAAAAD4/38j5tc7gPOw/2008-07-31_1830_thumb%5B3%5D.png?imgmax=800" width="464" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Some general non-VS shortcuts I also use:&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="2" width="402" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Alt+Tab&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Switch windows. &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+Right Arrow&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Jump one &amp;quot;word&amp;quot; to the right&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+Left Arrow&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Jump one &amp;quot;word&amp;quot; to the left&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+Shift+Right Arrow&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Un/Highlight one &amp;quot;word&amp;quot; to the right&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Ctrl+Shift+Left Arrow&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Un/Highlight one &amp;quot;word&amp;quot; to the left&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;h4&gt;Walking the Menus&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/jkohnen/SJeLZrcSTwI/AAAAAAAAAD8/-AgNAVXe7rM/s1600-h/2008-08-04_1855%5B5%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="298" alt="2008-08-04_1855" src="http://lh3.ggpht.com/jkohnen/SJeLaMU3q6I/AAAAAAAAAEA/eI_MleO1zrs/2008-08-04_1855_thumb%5B3%5D.png?imgmax=800" width="192" align="right" border="0" /&gt;&lt;/a&gt;Now, spend a few minutes exploring your menus and context menus. Look at all those commands and command categories. (Most having an underlined letter) &lt;/p&gt;  &lt;p&gt;Using your Alt key and those underlined letters you can &amp;quot;walk the menus.&amp;quot; &lt;/p&gt;  &lt;p&gt;When you hit Alt, the menu bar gets focus. Use the letter shortcuts (the underlined letter) to select the action you want. This keeps you from taking your hands off your keyboard to grab the mouse to click the menus.&lt;/p&gt;  &lt;p&gt;Some of my common &amp;quot;walks&amp;quot; are:&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="2" width="400" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Alt, B, U&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Build Current Project (the project containing the document your working on)&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Alt, D, P&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Attach the VS Debugger to a Process&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Alt, D, D&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Detach the VS Debugger from all Processes&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Alt, W, L&lt;/td&gt;        &lt;td valign="top" width="200"&gt;Close all Documents/Tabs&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;The first three don't seem like much, but I'll explain how valuable they are in &lt;a href="http://bouncetadiss.blogspot.com/2008/08/aspnet-development-tipstricks-using-to.html" target="_blank"&gt;a later post&lt;/a&gt;.&lt;/p&gt;  &lt;h4&gt;Conclusion&lt;/h4&gt;  &lt;p&gt;The process of taking your hand off your keyboard home row, grabbing the mouse, dragging to target, clicking (repeated clicking if you have bad aim), and moving your hand back to the home row takes valuable seconds. Why not save them by learning a keyboard trick or two?&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-9072515470611819528?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ZUc1Kkz83E8:cSOjBhRQiW0:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=ZUc1Kkz83E8:cSOjBhRQiW0:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ZUc1Kkz83E8:cSOjBhRQiW0:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=ZUc1Kkz83E8:cSOjBhRQiW0:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ZUc1Kkz83E8:cSOjBhRQiW0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ZUc1Kkz83E8:cSOjBhRQiW0:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ZUc1Kkz83E8:cSOjBhRQiW0:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/ZUc1Kkz83E8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/ZUc1Kkz83E8/aspnet-development-tipstricks-know-your.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/08/aspnet-development-tipstricks-know-your.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-7301765495119339926</guid><pubDate>Wed, 30 Jul 2008 16:51:00 +0000</pubDate><atom:updated>2008-07-30T10:02:48.162-07:00</atom:updated><title>RadComboBox not working within a ModalPopupExtender</title><description>I just figured out a problem I was having with a Telerik RadComboBox within a ModalPopupExtender and I thought I would share.&lt;br /&gt;&lt;br /&gt;The Extender worked fine, but when I clicked on the ComboBox the sliding drop down would not show. &lt;br /&gt;&lt;br /&gt;Turns out all the controls were working just fine, it was a CSS problem.&lt;br /&gt;&lt;br /&gt;By default the ModalPopupExtender div is set to a z-index of 100001. The RadComboBox slide div is set to a z-index to 6000. Essentially, the slide div was under the popup div.&lt;br /&gt;&lt;br /&gt;You can fix the problem by boosting the z-index of the slide div.&lt;br /&gt;&lt;br /&gt;I did it with jQuery:&lt;br /&gt;&lt;pre&gt;$(document).ready(function ()&lt;br /&gt;{&lt;br /&gt; $("div.rcbSlide").css('z-index', 100002);    &lt;br /&gt;});&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-7301765495119339926?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Rc6D8tgBvUY:08p9bCSR7rs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=Rc6D8tgBvUY:08p9bCSR7rs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Rc6D8tgBvUY:08p9bCSR7rs:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=Rc6D8tgBvUY:08p9bCSR7rs:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Rc6D8tgBvUY:08p9bCSR7rs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Rc6D8tgBvUY:08p9bCSR7rs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Rc6D8tgBvUY:08p9bCSR7rs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/Rc6D8tgBvUY" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/Rc6D8tgBvUY/radcombobox-not-working-within.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">6</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/07/radcombobox-not-working-within.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-7284911345049693270</guid><pubDate>Tue, 29 Jul 2008 04:18:00 +0000</pubDate><atom:updated>2008-07-30T10:04:23.133-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">visual studio</category><category domain="http://www.blogger.com/atom/ns#">tricks</category><category domain="http://www.blogger.com/atom/ns#">.net</category><category domain="http://www.blogger.com/atom/ns#">tips</category><title>"ASP.NET Development Tips/Tricks" are coming!</title><description>&lt;p&gt;During my years of developing in Visual Studio and ASP.NET, I've learned a few things here and there which helped me become more efficient when creating applications. &lt;/p&gt;  &lt;p&gt;At the risk of sounding stupid, I'm going to share with the community some tricks I've learned. I don't know how many posts there are going to be, but I hope something I say might have value to someone else.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-7284911345049693270?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=cysOQ3C09cc:c_yRBFMASfQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=cysOQ3C09cc:c_yRBFMASfQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=cysOQ3C09cc:c_yRBFMASfQ:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=cysOQ3C09cc:c_yRBFMASfQ:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=cysOQ3C09cc:c_yRBFMASfQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=cysOQ3C09cc:c_yRBFMASfQ:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=cysOQ3C09cc:c_yRBFMASfQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/cysOQ3C09cc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/cysOQ3C09cc/development-tipstricks-are-coming.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/07/development-tipstricks-are-coming.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-1920431490621793828</guid><pubDate>Sat, 19 Jul 2008 05:54:00 +0000</pubDate><atom:updated>2008-07-20T17:03:20.969-07:00</atom:updated><title>Some tips and tricks to prevent Email Harvesting / Scraping</title><description>&lt;p&gt;First a little background for those of you that don't know. The term Email Harvesting or Email Scraping comes from the trick some spammers use to get valid email addresses. &lt;/p&gt;  &lt;p&gt;Overly simplified, harvesting works as such: Some automated program goes out to web pages and looks over the source HTML for text that matches email formats (name@domain.com or mailto:name@domain.com). This software then stores matches to a database for spamming later. &lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;lt;rant&amp;gt;      &lt;br /&gt;Web developers pay attention, nothing erks me more then web sites that post my full email address for all to scrape. I don't think I'm the only one that feels this way.       &lt;br /&gt;&amp;lt;/rant&amp;gt;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;So how do you prevent your email from being harvested?    &lt;br /&gt;Here a couple of suggestions:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Be creative with how you present your email address so they don't match the standard format. &lt;/li&gt;    &lt;ul&gt;     &lt;ul&gt;       &lt;li&gt;Examples include: &lt;/li&gt;        &lt;ul&gt;         &lt;li&gt;name at domain dot com &lt;/li&gt;          &lt;li&gt;name shift+2 domain period com&lt;/li&gt;          &lt;li&gt;String.Format(&amp;quot;{0}@{1}.com&amp;quot;, &amp;quot;name&amp;quot;, &amp;quot;domain&amp;quot;); &lt;/li&gt;       &lt;/ul&gt;     &lt;/ul&gt;   &lt;/ul&gt;    &lt;li&gt;Use some type of masking javascript to obscure the email address      &lt;ul&gt;       &lt;li&gt;Example: (tool used: &lt;a href="http://javascript.about.com/library/blemail1.htm"&gt;about.com:Javascript&lt;/a&gt;) &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div style="overflow: scroll"&gt;&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;eval(unescape('d%6fc%75%6de%6e%74%2e%77%72%69%74e%28%27%3Ca%20%68%72ef%3D%22%26%23109%3Ba%26%23105%3B%6c%26%23116%3B%26%23111%3B%3A%26%23110%3B%26%2397%3B%26%23109%3B%26%23101%3B%26%2364%3B%26%23100%3B%26%23111%3B%26%23109%3B%26%2397%3B%26%23105%3B%26%23110%3B%26%2346%3B%26%2399%3B%26%23111%3B%26%23109%3B%22%3E%6ea%6de%3C%2fa%3E%27%29%3B'));&amp;lt;/script&amp;gt;&lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Use HTML encoding of some flavor      &lt;ul&gt;       &lt;li&gt;Example: (tool used: &lt;a href="http://javascript.about.com/library/blemail1.htm"&gt;about.com:Javascript&lt;/a&gt;) &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div style="overflow: scroll"&gt;&amp;lt;a href=&amp;quot;&amp;amp;#109;a&amp;amp;#105;l&amp;amp;#116;&amp;amp;#111;:&amp;amp;#110;&amp;amp;#97;&amp;amp;#109;&amp;amp;#101;&amp;amp;#64;&amp;amp;#100;&amp;amp;#111;&amp;amp;#109;&amp;amp;#97;&amp;amp;#105;&amp;amp;#110;&amp;amp;#46;&amp;amp;#99;&amp;amp;#111;&amp;amp;#109;&amp;quot;&amp;gt;name&amp;lt;/a&amp;gt;&lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Use an anti-bot process      &lt;ul&gt;       &lt;li&gt;Example: (Google Groups)          &lt;ul&gt;           &lt;li&gt;Clicking on the ellipse (...) of the email takes you to a CAPTCHA form &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/jkohnen/SIGDwD2JKjI/AAAAAAAAADE/AOvjkptMLtY/s1600-h/groups%5B4%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="279" alt="groups" src="http://lh4.ggpht.com/jkohnen/SIGBeJj-ZfI/AAAAAAAAADI/VkoqydHSrFY/groups_thumb%5B2%5D.png?imgmax=800" width="472" border="0" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;a href="http://lh6.ggpht.com/jkohnen/SIGBeRdrdLI/AAAAAAAAADM/w9s9dA4pWCc/s1600-h/google-captcha%5B7%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="248" alt="google-captcha" src="http://lh5.ggpht.com/jkohnen/SIGBet4hMYI/AAAAAAAAADQ/ZbDJx-pzBvc/google-captcha_thumb%5B5%5D.png?imgmax=800" width="471" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Use an email friendly URL shinker      &lt;ul&gt;       &lt;li&gt;Example: (tool used: &lt;a href="http://is.gd"&gt;http://is.gd&lt;/a&gt;)           &lt;ul&gt;           &lt;li&gt;Entered &amp;quot;mailto:name@domain.com&amp;quot;&amp;#160; &lt;br /&gt;and got &lt;a title="http://is.gd/XBs" href="http://is.gd/XBs"&gt;http://is.gd/XBs&lt;/a&gt;&amp;#160; &lt;br /&gt;(try it - you should experience the standard behavior of a &amp;quot;mailto,&amp;quot; usually launching an email client) &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Of course this is all a cat and mouse game. The harder we make it to harvest our email address the smarter the automated software becomes to figure it out our obfuscation. We just got to stay a step ahead of that darn cat.&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;lt;disclaimer&amp;gt;      &lt;br /&gt;I offer my advice with not warrantee or guarantee. Feel free to run with anything, but use at your own risk.       &lt;br /&gt;&amp;lt;/disclaimer&amp;gt;&lt;/em&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-1920431490621793828?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=-_RXtgjKwSE:UHKD-z6V_3U:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=-_RXtgjKwSE:UHKD-z6V_3U:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=-_RXtgjKwSE:UHKD-z6V_3U:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=-_RXtgjKwSE:UHKD-z6V_3U:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=-_RXtgjKwSE:UHKD-z6V_3U:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=-_RXtgjKwSE:UHKD-z6V_3U:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=-_RXtgjKwSE:UHKD-z6V_3U:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/-_RXtgjKwSE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/-_RXtgjKwSE/some-tips-and-tricks-to-prevent-email.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/07/some-tips-and-tricks-to-prevent-email.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-3327420512107998885</guid><pubDate>Wed, 11 Jun 2008 03:18:00 +0000</pubDate><atom:updated>2008-06-10T20:18:50.957-07:00</atom:updated><title>Use Exception.ToString() instead of Exception.Message</title><description>&lt;p&gt;All too often I see code that tries to log exceptions to some type of persistent storage for and later reference and error/bug tracking. Some might not be aware, but the second worst thing you can log is Exception.Message. (The first being &amp;quot;An error occurred.&amp;quot;) What should you use instead? Exception.ToString()&lt;/p&gt;  &lt;p&gt;There is a world of difference between the two. Here's an example:&lt;/p&gt;  &lt;div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; height: 259px; background-color: #f4f4f4"&gt;   &lt;div style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;     &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;   1:&lt;/span&gt; &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;partial&lt;/span&gt; &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; Default : System.Web.UI.Page&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;   2:&lt;/span&gt; {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;   3:&lt;/span&gt;     &lt;span style="color: #0000ff"&gt;protected&lt;/span&gt; &lt;span style="color: #0000ff"&gt;void&lt;/span&gt; Page_Load(&lt;span style="color: #0000ff"&gt;object&lt;/span&gt; sender, EventArgs e)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;   4:&lt;/span&gt;     {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;   5:&lt;/span&gt;         &lt;span style="color: #0000ff"&gt;try&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;   6:&lt;/span&gt;         {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;   7:&lt;/span&gt;             &lt;span style="color: #0000ff"&gt;int&lt;/span&gt; zero = 0;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;   8:&lt;/span&gt;             &lt;span style="color: #0000ff"&gt;int&lt;/span&gt; divisionbyZero = 42 / zero;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;   9:&lt;/span&gt;         }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;  10:&lt;/span&gt;         &lt;span style="color: #0000ff"&gt;catch&lt;/span&gt; (Exception caughtException)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;  11:&lt;/span&gt;         {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;  12:&lt;/span&gt;             System.Console.WriteLine(caughtException.Message);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;  13:&lt;/span&gt;             System.Console.WriteLine(caughtException.ToString());&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;  14:&lt;/span&gt;         }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;  15:&lt;/span&gt;     }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;  16:&lt;/span&gt; }&lt;/pre&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;When I debug, here is what I get from line 12:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; background-color: #f4f4f4"&gt;&lt;br /&gt;  &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;Attempted to divide by zero.&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;And from line 13:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; background-color: #f4f4f4"&gt;&lt;br /&gt;  &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;System.DivideByZeroException: Attempted to divide by zero.&lt;br /&gt;   at Demo.Web.Default.Page_Load(Object sender, EventArgs e) &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; C:\Working Copies\Demo\Demo.Web\Default.aspx.cs:line 23&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Which would you rather see in a system error log?&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;My recommendation when writing to an error log &amp;quot;Use Exception.ToString() instead of Exception.Message.&amp;quot;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-3327420512107998885?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Q7nWDuQEjTg:p68_LRjM3dI:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=Q7nWDuQEjTg:p68_LRjM3dI:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Q7nWDuQEjTg:p68_LRjM3dI:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=Q7nWDuQEjTg:p68_LRjM3dI:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Q7nWDuQEjTg:p68_LRjM3dI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Q7nWDuQEjTg:p68_LRjM3dI:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Q7nWDuQEjTg:p68_LRjM3dI:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/Q7nWDuQEjTg" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/Q7nWDuQEjTg/use-exceptiontostring-instead-of.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/06/use-exceptiontostring-instead-of.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-3506167977781054616</guid><pubDate>Sat, 05 Apr 2008 16:11:00 +0000</pubDate><atom:updated>2008-04-05T09:15:53.761-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">brian prince</category><category domain="http://www.blogger.com/atom/ns#">skills</category><category domain="http://www.blogger.com/atom/ns#">soft</category><category domain="http://www.blogger.com/atom/ns#">presentation</category><title>Recap: Brian H Prince on "Soft Skillz" for developers</title><description>&lt;p&gt;Recently at the &lt;a href="http://daytondevgroup.net"&gt;Dayton .NET Developers Group&lt;/a&gt; &lt;a title="Brian H. Prince&amp;#39;s Blog" href="http://brianhprince.blogspot.com/"&gt;Brian H. Prince&lt;/a&gt; gave a presentation titled &amp;quot;&lt;a title="Soft Skillz. Geeks Need &amp;#39;em Too" href="http://daytondevgroup.net/forums/t/99.aspx" rel="tag"&gt;Soft Skillz. Geeks Need 'em Too&lt;/a&gt;&amp;quot; &lt;/p&gt;  &lt;p&gt;Got to say, I thought the presentation was great. Had good humor, and Brian's passion for the subject matter really shines thru.&lt;/p&gt;  &lt;h4&gt;What did I get out of it?&lt;/h4&gt;  &lt;p&gt;One of the biggest things to stick is not all mentors have to be technical mentors. You can learn a lot from managers, sales reps, even from your clients.&lt;/p&gt;  &lt;p&gt;He also mentioned you need to keep reading. Read at least one book a month, and mix it up a bit. Read about other subjects, not just technical. Exploring these other areas will help you think of new ways to write your code.&lt;/p&gt;  &lt;p&gt;I could keep going but I don't want to spoil too much for developer's attending the CODODN.&lt;/p&gt;  &lt;p&gt;If you're coming to the &lt;a title="Central Ohio Day of .NET" href="http://cinnug.org/cododn"&gt;Central Ohio Day of .NET&lt;/a&gt; (CODODN) make sure to set some time aside for Brian's &amp;quot;Soft Skillz&amp;quot; presentation.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-3506167977781054616?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=xkXCrhgznwk:YOCL_Tt0uqE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=xkXCrhgznwk:YOCL_Tt0uqE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=xkXCrhgznwk:YOCL_Tt0uqE:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=xkXCrhgznwk:YOCL_Tt0uqE:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=xkXCrhgznwk:YOCL_Tt0uqE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=xkXCrhgznwk:YOCL_Tt0uqE:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=xkXCrhgznwk:YOCL_Tt0uqE:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/xkXCrhgznwk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/xkXCrhgznwk/brian-h-prince-on-skillz-for-developers.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/04/brian-h-prince-on-skillz-for-developers.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-279363793229741668</guid><pubDate>Wed, 02 Apr 2008 00:10:00 +0000</pubDate><atom:updated>2008-04-01T17:12:09.180-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">.net</category><category domain="http://www.blogger.com/atom/ns#">outer</category><category domain="http://www.blogger.com/atom/ns#">3.5</category><category domain="http://www.blogger.com/atom/ns#">linq</category><category domain="http://www.blogger.com/atom/ns#">join</category><category domain="http://www.blogger.com/atom/ns#">inner</category><title>.NET 3.5 LINQ and Inner, Outer Joins</title><description>&lt;p&gt;During my Visual Studio 2008 Install Party &lt;a title="Visual Studio 2008 Install Party" href="http://daytondevgroup.net/forums/t/83.aspx"&gt;presentation&lt;/a&gt; at the &lt;a href="http://daytondevgroup.net"&gt;Dayton .NET Developers Group&lt;/a&gt;. Someone asked the question &lt;/p&gt;  &lt;p&gt;&amp;quot;Can you do joins with LINQ?&amp;quot;&lt;/p&gt;  &lt;p&gt;I thought I would share a great blog post from K. Scott Allen titled: &lt;a title="Inner, Outer, Let&amp;#39;s All Join Together With LINQ" href="http://odetocode.com/Blogs/scott/archive/2008/03/24/11907.aspx"&gt;Inner, Outer, Let's All Join Together With LINQ&lt;/a&gt;.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-279363793229741668?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=SYRcL_yMbhY:djP-dLFd-v0:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=SYRcL_yMbhY:djP-dLFd-v0:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=SYRcL_yMbhY:djP-dLFd-v0:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=SYRcL_yMbhY:djP-dLFd-v0:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=SYRcL_yMbhY:djP-dLFd-v0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=SYRcL_yMbhY:djP-dLFd-v0:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=SYRcL_yMbhY:djP-dLFd-v0:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/SYRcL_yMbhY" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/SYRcL_yMbhY/net-35-linq-and-inner-outer-joins.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/04/net-35-linq-and-inner-outer-joins.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-8537625805826841015</guid><pubDate>Mon, 25 Feb 2008 05:46:00 +0000</pubDate><atom:updated>2008-02-24T19:08:21.283-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">tools</category><category domain="http://www.blogger.com/atom/ns#">live writer</category><category domain="http://www.blogger.com/atom/ns#">free</category><category domain="http://www.blogger.com/atom/ns#">blogging</category><title>Using Windows Live Writer for Blogging</title><description>&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt;	font-size: small;&lt;br /&gt;	color: black;&lt;br /&gt;	font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt;	background-color: #ffffff;&lt;br /&gt;	/*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt;	background-color: #f4f4f4;&lt;br /&gt;	width: 100%;&lt;br /&gt;	margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt; &lt;p&gt;Some of you may have noticed my blog posts have actually increased as of late. Why? I used to use Blogger's online editor and the trouble I had with it really pushed me away from writing posts. I want my posts to look just the way I want, and the editor kept taking liberties with my visual formatting. SO FRUSTRATING!&lt;/p&gt;  &lt;p&gt;So I posted the query to &lt;a title="Twitter Home" href="http://twitter.com/"&gt;Twitter&lt;/a&gt;:     &lt;br /&gt;&amp;quot;I'm taking a poll: What is your favorite blog editor?&amp;quot;&lt;/p&gt;  &lt;p&gt;Since then I've started using, you guessed it, &lt;a title="Windows Live Writer" href="http://get.live.com/writer/overview"&gt;Windows Live Writer&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;So far I'm loving it, every post I've made matches the preview. Just like a WYSIWYG should. I've also started playing with the &amp;quot;Plug-ins.&amp;quot; &lt;/p&gt;  &lt;p&gt;I've recently added &lt;a title="Insert Code Plug-in" href="http://gallery.live.com/liveItemDetail.aspx?li=1f57bd9b-a692-4593-9e9e-e2962d9c0eee&amp;amp;bt=9&amp;amp;pl=8"&gt;Insert Code&lt;/a&gt; Plug-in. Awesome! No more images of code for me. Here's a sample of what it does:&lt;/p&gt;  &lt;p&gt;&lt;span class="kwrd"&gt;Inserting HTML Code (but I'm using XML):&lt;/span&gt;&lt;/p&gt;  &lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;?&lt;/span&gt;&lt;span class="html"&gt;xml&lt;/span&gt; &lt;span class="attr"&gt;version&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;1.0&amp;quot;&lt;/span&gt;?&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;configuration&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;system.serviceModel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;services&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Inserting C#:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; SomeMethod(&lt;span class="kwrd"&gt;string&lt;/span&gt; someString)&lt;br /&gt;{&lt;br /&gt;  Console.WriteLine(someString);&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Inserting TSQL:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;CREATE&lt;/span&gt; &lt;span class="kwrd"&gt;PROCEDURE&lt;/span&gt; someStoredProcedure&lt;br /&gt;  @someMsg &lt;span class="kwrd"&gt;varchar&lt;/span&gt;(256) = &lt;span class="kwrd"&gt;NULL&lt;/span&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;AS&lt;/span&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;BEGIN&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;I can only imagine what other tools will be coming out in the future. So for right now Windows Live Writer is for me.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-8537625805826841015?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=8t_EKsksxzw:Wv0_MCklcbs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=8t_EKsksxzw:Wv0_MCklcbs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=8t_EKsksxzw:Wv0_MCklcbs:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=8t_EKsksxzw:Wv0_MCklcbs:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=8t_EKsksxzw:Wv0_MCklcbs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=8t_EKsksxzw:Wv0_MCklcbs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=8t_EKsksxzw:Wv0_MCklcbs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/8t_EKsksxzw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/8t_EKsksxzw/using-windows-live-writer-for-blogging.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/02/using-windows-live-writer-for-blogging.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-7622618984425439712</guid><pubDate>Wed, 20 Feb 2008 06:48:00 +0000</pubDate><atom:updated>2008-02-19T22:48:30.818-08:00</atom:updated><title>Cincinnati Users Group and the Version Control Panel</title><description>&lt;p&gt;Well I just finished up being part of the Source Control Panel at the Cincinnati Users Group.&lt;/p&gt;  &lt;p&gt;I was very enjoyable. I think I did a fine job representing Subversion. Those of you that read my blog know that I got a &lt;a title="Subversion Online Book" href="http://svnbook.red-bean.com/en/1.0/index.html"&gt;good understanding of the system and methodology&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;For those that are interested, &lt;a title="My Tagged SVN content in del.icio.us" href="http://del.icio.us/Dissidence/subversion"&gt;I tend to tag&lt;/a&gt; allot of my research&lt;/p&gt;  &lt;p&gt;Actually, I was quite surprised there weren't more questions about &amp;quot;&lt;a title="Subversion Best Practices" href="http://svn.collab.net/repos/svn/trunk/doc/user/svn-best-practices.html"&gt;Version Control Best Practices&lt;/a&gt;,&amp;quot; &amp;quot;&lt;a title="Microsoft Team Foundation Server Branching Guidance" href="http://www.codeplex.com/BranchingGuidance"&gt;Branching Options&lt;/a&gt;,&amp;quot; and &amp;quot;&lt;a title="K. Scott Allen on database versioning" href="http://odetocode.com/Blogs/scott/archive/2008/02/03/11746.aspx"&gt;Database Versioning&lt;/a&gt;&amp;quot;&lt;/p&gt;  &lt;p&gt;At the end there was much discussion about the &amp;quot;additional features&amp;quot; of TFS. I thought that was a bit unfair to SVN. SVN was designed to be nothing more then Version Control. Do one thing, and one thing well, right?&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;lt;PersonalOpinion&amp;gt;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Sure SVN doesn't have the &amp;quot;baked in&amp;quot; features like TFS does (and I'll admit TFS' integration is awesome) but with a few extra steps you can have work item tracking with &lt;a href="http://trac.edgewall.org/"&gt;trac&lt;/a&gt;. If you want Continual Integration you can always run &lt;a href="http://www.cifactory.org/joomla/"&gt;CI Factory&lt;/a&gt;. If you want a better repo viewing experience you can install &lt;a href="http://www.atlassian.com/software/fisheye/"&gt;Fisheye&lt;/a&gt;. If you want code review you can run &lt;a href="http://www.atlassian.com/software/crucible/"&gt;Crucible&lt;/a&gt;. With Subversion you have so many options.&lt;/p&gt;  &lt;p&gt;Actually, I think being able to &amp;quot;choose&amp;quot; which tools you want to mix and match is a huge perk of using SVN. However, you do have to write the &amp;quot;glue&amp;quot; that holds it all together.&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;lt;/PersonalOpinion&amp;gt;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;All in all I had a really great time. There were a flurry of good questions and conversation. In the end, I just hope I helped someone learn something.&lt;/p&gt;  &lt;p&gt;Remember, &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Any&lt;/u&gt; version control is better then no version control.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;P.S. If you have any additional questions about version control, ask away. I would be happy to address them.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-7622618984425439712?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ibrPdpOeqc4:fbLZVNphGsY:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=ibrPdpOeqc4:fbLZVNphGsY:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ibrPdpOeqc4:fbLZVNphGsY:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=ibrPdpOeqc4:fbLZVNphGsY:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ibrPdpOeqc4:fbLZVNphGsY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ibrPdpOeqc4:fbLZVNphGsY:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ibrPdpOeqc4:fbLZVNphGsY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/ibrPdpOeqc4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/ibrPdpOeqc4/cincinnati-users-group-and-version.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/02/cincinnati-users-group-and-version.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-7933008853187580051</guid><pubDate>Tue, 19 Feb 2008 15:35:00 +0000</pubDate><atom:updated>2008-03-04T07:07:41.208-08:00</atom:updated><title>Regular Expression Negation for Required Field Validators</title><description>&lt;p&gt;Out of the box ASP.NET regular expression &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;validators&lt;/span&gt; have the following behavior:&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Does control value match regular expression? If yes validation passes, else validation fails.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;But what if you wanted the following:&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Does control value &lt;strong&gt;NOT&lt;/strong&gt; match regular expression? If yes validation passes, else validation fails.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Turns out there is no "If expression not match" property on a regular expression &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;validator&lt;/span&gt;. Now, you can make your own custom regular expression control, or you can buy a &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;toolset&lt;/span&gt;. But it turns out you might be able to do it in your regular expression itself. &lt;/p&gt;  &lt;p&gt;This can be accomplished by using something called a &lt;a title="Negative lookahead assertion" href="http://www.amk.ca/python/howto/regex/regex.html#SECTION000540000000000000000"&gt;Negative &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;lookahead&lt;/span&gt; assertion&lt;/a&gt;. It succeeds if the contained expression &lt;i&gt;doesn't&lt;/i&gt; match at the current position in the string.&lt;/p&gt;  &lt;p&gt;The syntax is&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;(?!&lt;span class="kwrd"&gt;&amp;amp;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;lt&lt;/span&gt;;&lt;/span&gt;&lt;span class="html"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;)&lt;/pre&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;For example, say you wanted to prevent users from using an email address that contained "@spam.com". You could use the following &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;RegEx&lt;/span&gt;:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;*@(?![Ss][Pp][Aa][Mm][.][Cc][Oo][Mm]$).*&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Now your regular expression &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;validator&lt;/span&gt; will pass if their value does &lt;strong&gt;NOT &lt;/strong&gt;match the regular expression.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Regular Expression are extremely powerful, and I encourage everyone to learn about them. If you can master them, consider yourself a &lt;a href="http://xkcd.com/208"&gt;superhero&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-7933008853187580051?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=PcR5_cCO_uM:EMgMfrV5MTs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=PcR5_cCO_uM:EMgMfrV5MTs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=PcR5_cCO_uM:EMgMfrV5MTs:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=PcR5_cCO_uM:EMgMfrV5MTs:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=PcR5_cCO_uM:EMgMfrV5MTs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=PcR5_cCO_uM:EMgMfrV5MTs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=PcR5_cCO_uM:EMgMfrV5MTs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/PcR5_cCO_uM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/PcR5_cCO_uM/regular-expression-negation-for.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/02/regular-expression-negation-for.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-4142159235700407338</guid><pubDate>Mon, 18 Feb 2008 01:24:00 +0000</pubDate><atom:updated>2008-02-16T17:41:10.440-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">visual studio</category><category domain="http://www.blogger.com/atom/ns#">.net</category><category domain="http://www.blogger.com/atom/ns#">Dayton</category><category domain="http://www.blogger.com/atom/ns#">.net 3.5</category><category domain="http://www.blogger.com/atom/ns#">user group</category><category domain="http://www.blogger.com/atom/ns#">presentation</category><category domain="http://www.blogger.com/atom/ns#">2008</category><title>Visual Studio 2008 Tour and Install Party</title><description>&lt;p&gt;This month (February 27, 2008 18:00) I'll be speaking at the &lt;a title="Dayton .NET Developers Group" href="http://daytondevgroup.net"&gt;Dayton .NET Developers Group&lt;/a&gt; about Visual Studio 2008 and .NET 3.5. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;The official blub is:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Visual Studio 2008 and .NET 3.5 are soon to be released, after a very public and open beta process. We will run around the products, and discuss what the new features are. This will briefly cover VS, WCF, WF, C# and VB.NET features.&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;lt;RandomSideNote&amp;gt;      &lt;br /&gt;&lt;/em&gt;I'm actually filling in for &lt;a title="Brian Prince&amp;#39;s Blog" href="http://brianhprince.blogspot.com/"&gt;Brian Prince&lt;/a&gt;, who was filling in for &lt;a title="Jeff Blankenburg&amp;#39;s Blog" href="http://feeds.feedburner.com/Blankenthoughts"&gt;Jeff Blankenburg&lt;/a&gt;. Both of whom are very busy men. Being that I'm a single guy, with no kids, or pets I figured I could jump in and help out. People seemed to be excited about this upcoming meeting, I just couldn't let it be canceled.     &lt;br /&gt;&lt;em&gt;&amp;lt;/RandomSideNote&amp;gt;&lt;/em&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-4142159235700407338?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=DkbI5BNvnho:alfJNnrsEgU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=DkbI5BNvnho:alfJNnrsEgU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=DkbI5BNvnho:alfJNnrsEgU:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=DkbI5BNvnho:alfJNnrsEgU:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=DkbI5BNvnho:alfJNnrsEgU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=DkbI5BNvnho:alfJNnrsEgU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=DkbI5BNvnho:alfJNnrsEgU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/DkbI5BNvnho" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/DkbI5BNvnho/visual-studio-2008-tour-and-install.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/02/visual-studio-2008-tour-and-install.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-6895616386966875417</guid><pubDate>Sun, 17 Feb 2008 00:28:00 +0000</pubDate><atom:updated>2008-02-16T16:31:39.047-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">scm</category><category domain="http://www.blogger.com/atom/ns#">vcm</category><category domain="http://www.blogger.com/atom/ns#">version control</category><category domain="http://www.blogger.com/atom/ns#">subversion</category><category domain="http://www.blogger.com/atom/ns#">user group</category><category domain="http://www.blogger.com/atom/ns#">svn</category><category domain="http://www.blogger.com/atom/ns#">presentation</category><category domain="http://www.blogger.com/atom/ns#">Cincinnati</category><title>I'll be on the Source Control Panel on February 19, 2008 18:00</title><description>&lt;p&gt;The &lt;a title="Cincinnati User&amp;#39;s Group (Cinnug) hompage" href="http://cinnug.org/"&gt;Cincinnati User's Group (Cinnug)&lt;/a&gt; has asked me to be a part of the &amp;quot;Source Control Panel&amp;quot; they are having on Tuesday February 19, 2008 at 1800.&lt;/p&gt;  &lt;p&gt;This meeting is different then those I've been in before. It's an open panel for group members to come and ask questions about VSS, TFS, Harvest, ClearCase, Vault and Subversion.&lt;/p&gt;  &lt;p&gt;I'll be there primarily as a &lt;a title="Subversion Presentations" href="http://bouncetadiss.blogspot.com/search/label/subversion"&gt;Subversion&lt;/a&gt; resource, but I'll try to fill in on VSS and TFS where I can.&lt;/p&gt;  &lt;p&gt;Short notice I know, but if you're not doing anything Tuesday, come on down an heckle me. I think it's going to be a lot of fun.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-6895616386966875417?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Ry7ZvazXoaQ:HrTfNU1Rgkw:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=Ry7ZvazXoaQ:HrTfNU1Rgkw:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Ry7ZvazXoaQ:HrTfNU1Rgkw:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=Ry7ZvazXoaQ:HrTfNU1Rgkw:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Ry7ZvazXoaQ:HrTfNU1Rgkw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Ry7ZvazXoaQ:HrTfNU1Rgkw:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=Ry7ZvazXoaQ:HrTfNU1Rgkw:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/Ry7ZvazXoaQ" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/Ry7ZvazXoaQ/i-be-on-source-control-panel-on.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/02/i-be-on-source-control-panel-on.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-3555572234962728852</guid><pubDate>Sun, 17 Feb 2008 00:12:00 +0000</pubDate><atom:updated>2008-02-16T16:29:12.456-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">conference</category><category domain="http://www.blogger.com/atom/ns#">ohio</category><category domain="http://www.blogger.com/atom/ns#">free</category><category domain="http://www.blogger.com/atom/ns#">day of .net</category><category domain="http://www.blogger.com/atom/ns#">code camp</category><title>Central Ohio Day of .NET - April 19, 2008</title><description>&lt;p&gt;&lt;a title="Central Ohio Dayton of .NET homepage" href="http://cinnug.org/cododn/"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="159" alt="CentralOhioDoDNLogo_small" src="http://cinnug.org/images/CentralOhioDoDNLogo_small.png" width="148" align="right" border="0" /&gt;&lt;/a&gt;It's that time again. Time for us developers to get together and geek out to the latest technology and see who's smarter. ;)&lt;/p&gt;  &lt;p&gt;Day of .NET events are a series of mini-conferences organized by developers for developers. The event it &lt;u&gt;FREE&lt;/u&gt; to to all. &lt;/p&gt;  &lt;p&gt;Visit the &lt;a title="Central Ohio Day of .NET homepage" href="http://cinnug.org/cododn/"&gt;event's homepage&lt;/a&gt;, and &lt;a title="Registration Link" href="http://www.shrinkster.com/udg"&gt;register today&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;For those that have attended the Dayton Cincinnati Code Camps&amp;#160; of the past, this year we've included the Columbus .NET user group as well. Because &amp;quot;The Central Ohio Dayton Cincinnati Code Camp&amp;quot; was just to much to say, and CODCCC had just too many C's. The name has been changed to &amp;quot;Central Ohio Day of .NET&amp;quot;, or CODODN. Ah, just better. &lt;/p&gt;  &lt;p&gt;But seriously, becoming part of the &lt;a title="http://www.dodn.org/" href="http://www.dodn.org/"&gt;Day of .NET&lt;/a&gt; events makes it easier for coders to find us, and helps coders find similar events going on in their areas.&lt;/p&gt;  &lt;p&gt;&lt;a title="Central Ohio Day of .NET homepage" href="http://www.cinnug.org/cododn/"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="104" alt="CentralOhioDoDNBadge" src="http://www.cinnug.org/images/CentralOhioDoDNBadge.png" width="204" align="left" border="0" /&gt;&lt;/a&gt; Though the name may be different, it's the same great event. So come, meet new people, share ideas, socialize, and maybe learn something too.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;&lt;!--&lt;br /&gt;_uacct = "UA-1623622-1";&lt;br /&gt;urchinTracker();&lt;br /&gt;google_ad_client = "pub-9216046320163904";&lt;br /&gt;google_ad_width = 234;&lt;br /&gt;google_ad_height = 60;&lt;br /&gt;google_ad_format = "234x60_as";&lt;br /&gt;google_ad_type = "text";&lt;br /&gt;google_ad_channel = "";&lt;br /&gt;google_ui_features = "rc:6";&lt;br /&gt;//--&gt;&lt;/script&gt;&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"&gt;&lt;/script&gt;&lt;iframe name="google_ads_frame" marginwidth="0" marginheight="0" src="http://pagead2.googlesyndication.com/pagead/ads?client=undefined&amp;amp;dt=1203208104718&amp;amp;lmt=1203208102&amp;amp;format=undefinedxundefined&amp;amp;output=html&amp;amp;correlator=1203208104406&amp;amp;url=file%3A%2F%2F%2FC%3A%2FDocuments%2520and%2520Settings%2Fjkohnen%2FLocal%2520Settings%2FTemp%2FWindowsLiveWriter-429641856%2FBEF3F12A099B%2Findex.htm&amp;amp;cc=100&amp;amp;ga_vid=1371975697.1203208105&amp;amp;ga_sid=1203208105&amp;amp;ga_hid=419307651&amp;amp;flash=9.0.115.0&amp;amp;u_h=1024&amp;amp;u_w=1280&amp;amp;u_ah=1024&amp;amp;u_aw=1280&amp;amp;u_cd=32&amp;amp;u_tz=-300&amp;amp;u_java=true" frameborder="0" scrolling="no" allowtransparency="allowtransparency"&gt;&lt;/iframe&gt;&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-3555572234962728852?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ck-cvn_pb5M:6lMfBVuCiOI:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=ck-cvn_pb5M:6lMfBVuCiOI:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ck-cvn_pb5M:6lMfBVuCiOI:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=ck-cvn_pb5M:6lMfBVuCiOI:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ck-cvn_pb5M:6lMfBVuCiOI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ck-cvn_pb5M:6lMfBVuCiOI:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=ck-cvn_pb5M:6lMfBVuCiOI:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/ck-cvn_pb5M" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/ck-cvn_pb5M/central-ohio-day-of-net-april-19-2008.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/02/central-ohio-day-of-net-april-19-2008.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-3200085603493383581</guid><pubDate>Wed, 13 Feb 2008 15:22:00 +0000</pubDate><atom:updated>2008-02-14T18:04:28.871-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">.net</category><category domain="http://www.blogger.com/atom/ns#">resharper</category><category domain="http://www.blogger.com/atom/ns#">exception</category><category domain="http://www.blogger.com/atom/ns#">list</category><category domain="http://www.blogger.com/atom/ns#">intellisense</category><title>Getting a list of .NET exceptions with Resharper.</title><description>&lt;p&gt;Often I'm programming C#.NET and want to throw an exception but I don't know what exception to throw. I think &amp;quot;wouldn't it be nice if there was an easy way to get a list of the exceptions in .NET?&amp;quot;&lt;/p&gt;  &lt;p&gt;I've Googled, I've dug thru the MDSN, then it hit me...&lt;/p&gt;  &lt;p&gt;DUH! &lt;a title="JetBrains Resharper" href="http://www.jetbrains.com/resharper/"&gt;Resharper's&lt;/a&gt; intellisense.&lt;/p&gt;  &lt;p&gt;A simple &amp;quot;throw new&amp;quot; gives you:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.google.com/jkohnen/R7TvgJNdg6I/AAAAAAAAACA/KUWouwsvGow/2008-02-14_1858%5B3%5D"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="228" alt="2008-02-14_1858" src="http://lh6.google.com/jkohnen/R7TvhJNdg7I/AAAAAAAAACI/EOvJzIZrWYA/2008-02-14_1858_thumb%5B1%5D" width="382" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;And you can use the &amp;quot;Navigate from here to Base&amp;quot; feature to get a more detailed list.&lt;/p&gt;  &lt;p&gt;Just type &amp;quot;System.Exception&amp;quot; and hit the Resharper 2.x shortcut: Ctrl + Alt + B&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.google.com/jkohnen/R7TvhpNdg8I/AAAAAAAAACQ/U2dueRIRIcE/Navigate_To_Base%5B5%5D"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="527" alt="Navigate_To_Base" src="http://lh6.google.com/jkohnen/R7TvjJNdg9I/AAAAAAAAACY/93ViZelZkzk/Navigate_To_Base_thumb%5B3%5D" width="431" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-3200085603493383581?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=1tYPGahq-Uo:AMP5gytYPgs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=1tYPGahq-Uo:AMP5gytYPgs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=1tYPGahq-Uo:AMP5gytYPgs:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=1tYPGahq-Uo:AMP5gytYPgs:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=1tYPGahq-Uo:AMP5gytYPgs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=1tYPGahq-Uo:AMP5gytYPgs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=1tYPGahq-Uo:AMP5gytYPgs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/1tYPGahq-Uo" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/1tYPGahq-Uo/getting-list-of-net-exceptions-with.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/02/getting-list-of-net-exceptions-with.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5557676106599030943.post-3735283449526323177</guid><pubDate>Tue, 05 Feb 2008 20:09:00 +0000</pubDate><atom:updated>2008-02-07T19:47:46.943-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">url</category><category domain="http://www.blogger.com/atom/ns#">.net</category><category domain="http://www.blogger.com/atom/ns#">uri</category><category domain="http://www.blogger.com/atom/ns#">parse</category><title>Parsing a URI / URL in C# and VB.NET</title><description>&lt;p&gt;I used to spend time parsing a URL string using old fashion .NET string methods. (Contains, Split, Substring, IndexOf, etc). I always thought, &amp;quot;There must be a better way to do this.&amp;quot;&lt;/p&gt;  &lt;p&gt;And there is, there is a tool in the .NET Framework to help you parse a fully qualified URI path. &lt;/p&gt;  &lt;h4&gt;System.UriBuilder&lt;/h4&gt;  &lt;p&gt;A few simple lines of code&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.google.com/jkohnen/R6vQZhIfR3I/AAAAAAAAABg/slLEDnA8SsY/2008-02-06_0508%5B5%5D"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="82" alt="2008-02-06_0508" src="http://lh6.google.com/jkohnen/R6vQZxIfR4I/AAAAAAAAABo/Y6iiALqzu50/2008-02-06_0508_thumb%5B3%5D" width="434" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; Does a lot of the work for us.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.google.com/jkohnen/R6vQaRIfR5I/AAAAAAAAABw/TxtZNuKaXPg/2008-02-06_0507%5B3%5D"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="272" alt="2008-02-06_0507" src="http://lh4.google.com/jkohnen/R6vQbRIfR6I/AAAAAAAAAB4/bjfFflraRb4/2008-02-06_0507_thumb%5B1%5D" width="443" border="0" /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;  &lt;p&gt;And this is just one of the Uri tools. I encourage you to look at the others as well.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;System.Uri&lt;/li&gt;    &lt;li&gt;System.UriComponents&lt;/li&gt;    &lt;li&gt;System.UriFormat&lt;/li&gt;    &lt;li&gt;System.UriHostNameType&lt;/li&gt;    &lt;li&gt;System.UriIdnScope&lt;/li&gt;    &lt;li&gt;System.UriKind&lt;/li&gt;    &lt;li&gt;System.UriParser&lt;/li&gt;    &lt;li&gt;System.UriPartial&lt;/li&gt;    &lt;li&gt;System.UriTypeConverter&lt;/li&gt; &lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
_uacct = "UA-1623622-1";
urchinTracker();
google_ad_client = "pub-9216046320163904";
google_ad_width = 234;
google_ad_height = 60;
google_ad_format = "234x60_as";
google_ad_type = "text";
google_ad_channel = "";
google_ui_features = "rc:6";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5557676106599030943-3735283449526323177?l=bouncetadiss.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=9Yh43b_YscM:uKvZ5gaqfCo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=9Yh43b_YscM:uKvZ5gaqfCo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=9Yh43b_YscM:uKvZ5gaqfCo:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?i=9Yh43b_YscM:uKvZ5gaqfCo:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=9Yh43b_YscM:uKvZ5gaqfCo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=9Yh43b_YscM:uKvZ5gaqfCo:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JustinKohnen?a=9Yh43b_YscM:uKvZ5gaqfCo:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JustinKohnen?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JustinKohnen/~4/9Yh43b_YscM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/JustinKohnen/~3/9Yh43b_YscM/parsing-uri-url-in-c-and-vbnet.html</link><author>noreply@blogger.com (Justin Kohnen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://bouncetadiss.blogspot.com/2008/02/parsing-uri-url-in-c-and-vbnet.html</feedburner:origLink></item></channel></rss>
