<?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:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:image="http://purl.org/rss/1.0/modules/image/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
    <channel>
        <title>Scott Dorman</title>
        <link>http://geekswithblogs.net/sdorman/Default.aspx</link>
        <description>ephemeral segment</description>
        <language>en-US</language>
        <copyright>Scott Dorman</copyright>
        <managingEditor>sj_dorman@hotmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <creativeCommons:license>http://creativecommons.org/licenses/by/3.0/us/</creativeCommons:license>
        <image>
            <title>Scott Dorman</title>
            <url>http://geekswithblogs.net/images/RSS2Image.gif</url>
            <link>http://geekswithblogs.net/sdorman/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <geo:lat>27.979114</geo:lat><geo:long>-82.781666</geo:long><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/ScottDorman" type="application/rss+xml" /><feedburner:emailServiceId>ScottDorman</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2FScottDorman" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FScottDorman" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.feedburner.com%2FScottDorman" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feeds.feedburner.com/ScottDorman" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FScottDorman" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2FScottDorman" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FScottDorman" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare href="http://www.live.com/?add=http%3A%2F%2Ffeeds.feedburner.com%2FScottDorman" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
            <title>Sams Teach Yourself C# 2010 in 24 Hours</title>
            <category>Books</category>
            <category>Sams Teach Yourself C# 2010</category>
            <link>http://feedproxy.google.com/~r/ScottDorman/~3/-dUiHif2jsw/sams-teach-yourself-c-2010-in-24-hours.aspx</link>
            <description>&lt;p&gt;I’m sure most of you are familiar with the Sams Teach Yourself books, at least in passing if not in owning one. I am very excited to announce that I will be joining the Sams Publishing authoring team for their upcoming &lt;u&gt;Teach Yourself C# 2010 in 24 Hours&lt;/u&gt; book.&lt;/p&gt;  &lt;p&gt;This new edition will be quite a bit different from the previous editions since it will be much more language-focused and will take a more holistic view of the language. If you have already looked at one of the earlier editions and decided that it wasn’t for you, please give the new edition a chance to change your mind; for those of you who already have an earlier edition, I hope this one will be of interest to you as well.&lt;/p&gt;  &lt;p&gt;As it gets closer to the release date, I’ll be sure to let everyone know when it will be available.&lt;/p&gt;  &lt;p&gt;I also want to thank &lt;a href="http://keithelder.net/blog/" target="_blank"&gt;Keith Elder&lt;/a&gt;, &lt;a href="http://drowningintechnicaldebt.com/blogs/ShawnWeisfeld/default.aspx" target="_blank"&gt;Shawn Weisfeld&lt;/a&gt;, &lt;a href="http://blogs.msdn.com/brada/" target="_blank"&gt;Brad Abrams&lt;/a&gt;, and &lt;a href="http://blogs.msdn.com/kcwalina/" target="_blank"&gt;Krzysztof Cwalina&lt;/a&gt; for providing some excellent feedback on the table of contents.&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:c5743e5e-bff5-4e9f-9c41-484e4fb43856" class="wlWriterSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Books" rel="tag"&gt;Books&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Sams+Teach+Yourself+C%23+2010" rel="tag"&gt;Sams Teach Yourself C# 2010&lt;/a&gt;&lt;/div&gt;&lt;div class="wlWriterHeaderFooter" style="text-align:left; margin:0px; padding:4px 4px 4px 4px;"&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http://geekswithblogs.net/sdorman/archive/2009/06/26/sams-teach-yourself-c-2010-in-24-hours.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://geekswithblogs.net/sdorman/archive/2009/06/26/sams-teach-yourself-c-2010-in-24-hours.aspx&amp;amp;bgcolor=0080C0&amp;amp;fgcolor=FFFFFF&amp;amp;border=000000&amp;amp;cbgcolor=D4E1ED&amp;amp;cfgcolor=000000" alt="DotNetKicks Image" border="0/" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133088"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133088" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/sdorman/aggbug/133088.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/AMCdvCOExXh_B1BZkEUuO8NZfsc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/AMCdvCOExXh_B1BZkEUuO8NZfsc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/AMCdvCOExXh_B1BZkEUuO8NZfsc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/AMCdvCOExXh_B1BZkEUuO8NZfsc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=-dUiHif2jsw:soXQfnwwM2E:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=-dUiHif2jsw:soXQfnwwM2E:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=-dUiHif2jsw:soXQfnwwM2E:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=-dUiHif2jsw:soXQfnwwM2E:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=-dUiHif2jsw:soXQfnwwM2E:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=-dUiHif2jsw:soXQfnwwM2E:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=-dUiHif2jsw:soXQfnwwM2E:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=-dUiHif2jsw:soXQfnwwM2E:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=-dUiHif2jsw:soXQfnwwM2E:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=-dUiHif2jsw:soXQfnwwM2E:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=-dUiHif2jsw:soXQfnwwM2E:wF9xT3WuBAs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=-dUiHif2jsw:soXQfnwwM2E:wF9xT3WuBAs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=-dUiHif2jsw:soXQfnwwM2E:l6gmwiTKsz0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=l6gmwiTKsz0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=-dUiHif2jsw:soXQfnwwM2E:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=-dUiHif2jsw:soXQfnwwM2E:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=-dUiHif2jsw:soXQfnwwM2E:bcOpcFrp8Mo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=bcOpcFrp8Mo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=-dUiHif2jsw:soXQfnwwM2E:YwkR-u9nhCs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=YwkR-u9nhCs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=-dUiHif2jsw:soXQfnwwM2E:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=-dUiHif2jsw:soXQfnwwM2E:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=-dUiHif2jsw:soXQfnwwM2E:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ScottDorman/~4/-dUiHif2jsw" height="1" width="1"/&gt;</description>
            <dc:creator>Scott Dorman</dc:creator>
            <guid isPermaLink="false">http://geekswithblogs.net/sdorman/archive/2009/06/26/sams-teach-yourself-c-2010-in-24-hours.aspx</guid>
            <pubDate>Fri, 26 Jun 2009 23:54:33 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/sdorman/comments/133088.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/sdorman/archive/2009/06/26/sams-teach-yourself-c-2010-in-24-hours.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/sdorman/comments/commentRss/133088.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/sdorman/services/trackbacks/133088.aspx</trackback:ping>
        <feedburner:origLink>http://geekswithblogs.net/sdorman/archive/2009/06/26/sams-teach-yourself-c-2010-in-24-hours.aspx</feedburner:origLink></item>
        <item>
            <title>Tampa Bay IASA June 2009 Meeting Reminder</title>
            <link>http://feedproxy.google.com/~r/ScottDorman/~3/euzLgL78rw0/tampa-bay-iasa-june-2009-meeting-reminder.aspx</link>
            <description>&lt;p&gt;Just a quick reminder that the June 2009 meeting is tonight from 6:30 PM - 8:30 PM (ET) at the Microsoft office. &lt;strong&gt;Please &lt;i&gt;be sure to register &lt;/i&gt;so we have a good idea of how much pizza to order.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Enterprise Architecture&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;What is it? Why is it important? An overview of Enterprise Architecture as a discipline, its principles, methods, frameworks and tools. This session will explore the growing role and importance of enterprise architecture in the management of organizations.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Speaker:&lt;/u&gt;&lt;/strong&gt; Bob Otterberg is the Chief Technologist for the US Applications organization at EDS, an HP company. In this role Bob determines, supports and influences the technical direction of the Applications Delivery to meet business requirements through appropriate implementation of technology and process. He aligns technology strategy with business needs and investigates innovative process and technology opportunities based on strategic business goals. Otterberg also oversees consistency across Applications Delivery within the US.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;i&gt;When &amp;amp; Where:&lt;/i&gt;&lt;/strong&gt;     &lt;br /&gt;Thursday, June 26, 2009 from 06:30 PM - 08:30 PM (ET)&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Microsoft Corporation&lt;/strong&gt;     &lt;br /&gt;5426 Bay Center Dr     &lt;br /&gt;Suite 700     &lt;br /&gt;Tampa, FL 33609     &lt;br /&gt;&lt;a href="http://maps.live.com/default.aspx?v=2&amp;amp;style=r&amp;amp;lvl=100&amp;amp;where1=5426 Bay Center%2CTampa%2CFL%2C33609"&gt;View a map&lt;/a&gt;     &lt;br /&gt;&lt;a href="http://maps.live.com/OneClickDirections.aspx?rtp=%7epos.nnqny183nq2s_5426+Bay+Center+Dr%2c+Tampa%2c+FL+33609-3444___a_&amp;amp;rsd=27.9743215441704_-82.5470289587975_AS0iCSAOAAAAErGYACUBAAA%3d_the+north+(via+Eisenhower+Blvd+%2f+Veterans+Expy+%2f+SR-589+Toll+S)%7e27.9197090864182_-82.6097685098648_AS0iCSAOAAAAGLGYAEMAAAA%3d_the+south+(via+Howard+Frankland+Bridge+N+%2f+I-275)%7e27.9653710126877_-82.4390405416489_AS0iCSAOAAAAFrGYALwAAAA%3d_the+east+(via+I-4)%7e27.9732406139374_-82.5905799865723_AS0iCSAOAAAAErGYAH8AAAA%3d_the+west+(via+W+Courtney+Campbell+Causeway+%2f+SR-60)&amp;amp;mkt=en-us&amp;amp;FORM=LLMP"&gt;View 1-Click Directions&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&lt;a href="http://www.eventbrite.com/event/175217079/scottdorman"&gt;&lt;img border="0" alt="" src="http://www.eventbrite.com/img/btn_ext/register_now.gif" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Please &lt;i&gt;be sure to register &lt;/i&gt;so we have a good idea of how much pizza to order.&lt;/b&gt;&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:5b395ad5-b652-49ff-9e02-944c94dfcad2" class="wlWriterSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/IASA" rel="tag"&gt;IASA&lt;/a&gt;&lt;/div&gt;&lt;div class="wlWriterHeaderFooter" style="text-align:right; margin:0px; padding:4px 0px 4px 0px;"&gt;&lt;a href="http://digg.com/submit?url=http%3a%2f%2fgeekswithblogs.net%2fsdorman%2farchive%2f2009%2f06%2f25%2ftampa-bay-iasa-june-2009-meeting-reminder.aspx&amp;amp;title=Tampa+Bay+IASA+June+2009+Meeting+Reminder"&gt;&lt;img src="http://digg.com/img/badges/100x20-digg-button.png" width="100" height="20" alt="Digg This" title="Digg This" border="0" style="border: 0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133044"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133044" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/sdorman/aggbug/133044.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/2vqy8jLOgUDPRC9-jm8D0tj1108/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2vqy8jLOgUDPRC9-jm8D0tj1108/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/2vqy8jLOgUDPRC9-jm8D0tj1108/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2vqy8jLOgUDPRC9-jm8D0tj1108/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=euzLgL78rw0:fAQM6AJl08Q:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=euzLgL78rw0:fAQM6AJl08Q:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=euzLgL78rw0:fAQM6AJl08Q:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=euzLgL78rw0:fAQM6AJl08Q:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=euzLgL78rw0:fAQM6AJl08Q:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=euzLgL78rw0:fAQM6AJl08Q:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=euzLgL78rw0:fAQM6AJl08Q:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=euzLgL78rw0:fAQM6AJl08Q:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=euzLgL78rw0:fAQM6AJl08Q:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=euzLgL78rw0:fAQM6AJl08Q:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=euzLgL78rw0:fAQM6AJl08Q:wF9xT3WuBAs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=euzLgL78rw0:fAQM6AJl08Q:wF9xT3WuBAs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=euzLgL78rw0:fAQM6AJl08Q:l6gmwiTKsz0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=l6gmwiTKsz0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=euzLgL78rw0:fAQM6AJl08Q:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=euzLgL78rw0:fAQM6AJl08Q:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=euzLgL78rw0:fAQM6AJl08Q:bcOpcFrp8Mo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=bcOpcFrp8Mo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=euzLgL78rw0:fAQM6AJl08Q:YwkR-u9nhCs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=YwkR-u9nhCs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=euzLgL78rw0:fAQM6AJl08Q:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=euzLgL78rw0:fAQM6AJl08Q:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=euzLgL78rw0:fAQM6AJl08Q:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ScottDorman/~4/euzLgL78rw0" height="1" width="1"/&gt;</description>
            <dc:creator>Scott Dorman</dc:creator>
            <guid isPermaLink="false">http://geekswithblogs.net/sdorman/archive/2009/06/25/tampa-bay-iasa-june-2009-meeting-reminder.aspx</guid>
            <pubDate>Thu, 25 Jun 2009 13:39:03 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/sdorman/comments/133044.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/sdorman/archive/2009/06/25/tampa-bay-iasa-june-2009-meeting-reminder.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/sdorman/comments/commentRss/133044.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/sdorman/services/trackbacks/133044.aspx</trackback:ping>
        <feedburner:origLink>http://geekswithblogs.net/sdorman/archive/2009/06/25/tampa-bay-iasa-june-2009-meeting-reminder.aspx</feedburner:origLink></item>
        <item>
            <title>Getting a custom attribute</title>
            <category>.NET (C#)</category>
            <category>CodeProject</category>
            <link>http://feedproxy.google.com/~r/ScottDorman/~3/yiWZVTWWVaY/getting-a-custom-attribute.aspx</link>
            <description>&lt;div id="codeSnippetWrapper"&gt;Attribute programming has a lot of benefits and, when done correctly, can greatly simplify the amount of code that you need to write. One drawback to using attributes is that the code required to retrieve a custom attribute from a type is a bit cumbersome and is very repetitious.&lt;/div&gt;  &lt;p&gt;Given a type, the simplest way to retrieve a custom attribute is code like&lt;/p&gt;  &lt;div style="border-bottom: silver 1px solid; text-align: left; border-left: silver 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: 'Courier New', courier, monospace; direction: ltr; max-height: 200px; font-size: 8pt; overflow: auto; border-top: silver 1px solid; cursor: text; border-right: silver 1px solid; padding-top: 4px" id="codeSnippetWrapper"&gt;   &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;CustomAttribute attribute = Attribute.GetCustomAttribute(customType.GetType(), &lt;span style="color: #0000ff"&gt;typeof&lt;/span&gt;(CustomAttribute), &lt;span style="color: #0000ff"&gt;true&lt;/span&gt;) &lt;span style="color: #0000ff"&gt;as&lt;/span&gt; CustomAttribute;&lt;/pre&gt;

  &lt;br /&gt;&lt;/div&gt;

&lt;p&gt;While this is simple code, it doesn’t handle any error conditions and requires that you always remember to perform the cast. A more complete method would look like&lt;/p&gt;

&lt;div style="border-bottom: silver 1px solid; text-align: left; border-left: silver 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: 'Courier New', courier, monospace; direction: ltr; height: 275px; max-height: 400px; font-size: 8pt; overflow: auto; border-top: silver 1px solid; cursor: text; border-right: silver 1px solid; padding-top: 4px" id="codeSnippetWrapper"&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;static&lt;/span&gt; CustomAttribute GetAttribute(MemberInfo element)&lt;br /&gt;{&lt;br /&gt;    CustomAttribute attribute = &lt;span style="color: #0000ff"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;try&lt;/span&gt;&lt;br /&gt;    {&lt;br /&gt;        attribute = Attribute.GetCustomAttribute(element, &lt;span style="color: #0000ff"&gt;typeof&lt;/span&gt;(CustomAttribute), &lt;span style="color: #0000ff"&gt;true&lt;/span&gt;) &lt;span style="color: #0000ff"&gt;as&lt;/span&gt; CustomAttribute;&lt;br /&gt;    }&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;catch&lt;/span&gt;&lt;br /&gt;    {&lt;br /&gt;        &lt;span style="color: #008000"&gt;// We aren't really interested in the exceptions here, but if we do get an exception&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: #008000"&gt;// just return null;&lt;/span&gt;&lt;br /&gt;        attribute = &lt;span style="color: #0000ff"&gt;null&lt;/span&gt;;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; attribute;&lt;br /&gt;}&lt;/pre&gt;

  &lt;br /&gt;&lt;/div&gt;

&lt;div&gt;This nicely encapsulates the error handling and casting, but introduces another drawback. In order to make use of this method you would need to include it on every custom attribute you create, being sure to change the types appropriately.&lt;/div&gt;

&lt;div&gt; &lt;/div&gt;

&lt;div&gt;We can make this more practical by changing to a generic extension method with very little effort&lt;/div&gt;

&lt;div style="border-bottom: silver 1px solid; text-align: left; border-left: silver 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: 'Courier New', courier, monospace; direction: ltr; height: 336px; max-height: 400px; font-size: 8pt; overflow: auto; border-top: silver 1px solid; cursor: text; border-right: silver 1px solid; padding-top: 4px" id="codeSnippetWrapper"&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;static&lt;/span&gt; T GetAttribute&amp;lt;T&amp;gt;(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt; MemberInfo element) &lt;span style="color: #0000ff"&gt;where&lt;/span&gt; T: Attribute&lt;br /&gt;{&lt;br /&gt;    T attribute = &lt;span style="color: #0000ff"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (element != &lt;span style="color: #0000ff"&gt;null&lt;/span&gt;)&lt;br /&gt;    {&lt;br /&gt;        &lt;span style="color: #0000ff"&gt;try&lt;/span&gt;&lt;br /&gt;        {&lt;br /&gt;            attribute = Attribute.GetCustomAttribute(element, &lt;span style="color: #0000ff"&gt;typeof&lt;/span&gt;(T), &lt;span style="color: #0000ff"&gt;true&lt;/span&gt;) &lt;span style="color: #0000ff"&gt;as&lt;/span&gt; T;&lt;br /&gt;        }&lt;br /&gt;        &lt;span style="color: #0000ff"&gt;catch&lt;/span&gt;&lt;br /&gt;        {&lt;br /&gt;            &lt;span style="color: #008000"&gt;// We aren't really interested in the exceptions here, but if we do get an exception&lt;/span&gt;&lt;br /&gt;            &lt;span style="color: #008000"&gt;// just return null;&lt;/span&gt;&lt;br /&gt;            attribute = &lt;span style="color: #0000ff"&gt;null&lt;/span&gt;;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; attribute;&lt;br /&gt;}&lt;/pre&gt;

  &lt;br /&gt;&lt;/div&gt;

&lt;div&gt;The benefit here is that, because this is implemented as an extension method it is available as if it were a real method call on any class derived from MemberInfo, which happens to be the base class for all of the Type classes.&lt;/div&gt;

&lt;div&gt; &lt;/div&gt;

&lt;div&gt;Now, we can define our custom attributes without any special consideration to providing a strongly typed GetAttribute method and when we want to retrieve a custom attribute, we can use code that now looks like&lt;/div&gt;

&lt;div style="border-bottom: silver 1px solid; text-align: left; border-left: silver 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: 'Courier New', courier, monospace; direction: ltr; max-height: 200px; font-size: 8pt; overflow: auto; border-top: silver 1px solid; cursor: text; border-right: silver 1px solid; padding-top: 4px" id="codeSnippetWrapper"&gt;
  &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;CustomAttribute attribute = customType.GetType().GetAttribute&amp;lt;CustomAttribute&amp;gt;();&lt;/pre&gt;

  &lt;br /&gt;&lt;/div&gt;

&lt;div&gt;It might not look like a major change in the calling site, but we are now able to quickly and easily get a strongly typed attribute given an instance type. 
  &lt;br /&gt;&lt;/div&gt;

&lt;p&gt;&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:271cffa5-0f80-4f36-b0e8-4e4f9d76b7a6" class="wlWriterSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/C%23" rel="tag"&gt;C#&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Attributes" rel="tag"&gt;Attributes&lt;/a&gt;&lt;/div&gt;&lt;div class="wlWriterHeaderFooter" style="text-align:right; margin:0px; padding:4px 0px 4px 0px;"&gt;&lt;a href="http://digg.com/submit?url=http%3a%2f%2fgeekswithblogs.net%2fsdorman%2farchive%2f2009%2f06%2f08%2fgetting-a-custom-attribute.aspx&amp;amp;title=Getting+a+custom+attribute"&gt;&lt;img src="http://digg.com/img/badges/100x20-digg-button.png" width="100" height="20" alt="Digg This" title="Digg This" border="0" style="border: 0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=132691"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=132691" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/sdorman/aggbug/132691.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/UTfQp1gJnqubwkuStVvoyIvgWNs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/UTfQp1gJnqubwkuStVvoyIvgWNs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/UTfQp1gJnqubwkuStVvoyIvgWNs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/UTfQp1gJnqubwkuStVvoyIvgWNs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=yiWZVTWWVaY:duOiTDeq1dc:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=yiWZVTWWVaY:duOiTDeq1dc:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=yiWZVTWWVaY:duOiTDeq1dc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=yiWZVTWWVaY:duOiTDeq1dc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=yiWZVTWWVaY:duOiTDeq1dc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=yiWZVTWWVaY:duOiTDeq1dc:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=yiWZVTWWVaY:duOiTDeq1dc:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=yiWZVTWWVaY:duOiTDeq1dc:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=yiWZVTWWVaY:duOiTDeq1dc:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=yiWZVTWWVaY:duOiTDeq1dc:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=yiWZVTWWVaY:duOiTDeq1dc:wF9xT3WuBAs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=yiWZVTWWVaY:duOiTDeq1dc:wF9xT3WuBAs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=yiWZVTWWVaY:duOiTDeq1dc:l6gmwiTKsz0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=l6gmwiTKsz0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=yiWZVTWWVaY:duOiTDeq1dc:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=yiWZVTWWVaY:duOiTDeq1dc:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=yiWZVTWWVaY:duOiTDeq1dc:bcOpcFrp8Mo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=bcOpcFrp8Mo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=yiWZVTWWVaY:duOiTDeq1dc:YwkR-u9nhCs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=YwkR-u9nhCs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=yiWZVTWWVaY:duOiTDeq1dc:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=yiWZVTWWVaY:duOiTDeq1dc:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=yiWZVTWWVaY:duOiTDeq1dc:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ScottDorman/~4/yiWZVTWWVaY" height="1" width="1"/&gt;</description>
            <dc:creator>Scott Dorman</dc:creator>
            <guid isPermaLink="false">http://geekswithblogs.net/sdorman/archive/2009/06/08/getting-a-custom-attribute.aspx</guid>
            <pubDate>Mon, 08 Jun 2009 18:31:58 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/sdorman/comments/132691.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/sdorman/archive/2009/06/08/getting-a-custom-attribute.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/sdorman/comments/commentRss/132691.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/sdorman/services/trackbacks/132691.aspx</trackback:ping>
        <feedburner:origLink>http://geekswithblogs.net/sdorman/archive/2009/06/08/getting-a-custom-attribute.aspx</feedburner:origLink></item>
        <item>
            <title>Windows 7 Bing Search Connector</title>
            <category>Windows 7</category>
            <link>http://feedproxy.google.com/~r/ScottDorman/~3/9i4R44Z2Meg/windows-7-bing-search-connector.aspx</link>
            <description>&lt;p&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 5px 0px 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image002_thumb" border="0" alt="clip_image002_thumb" align="left" src="http://geekswithblogs.net/images/geekswithblogs_net/sdorman/WindowsLiveWriter/Windows7BingSearchConnector_BA9F/clip_image002_thumb_3.jpg" width="159" height="51" /&gt;Microsoft’s latest incarnation of it’s &lt;a href="http://www.bing.com" target="_blank"&gt;search engine&lt;/a&gt;, which has gone by a few different code names, is live a few days early.&lt;/p&gt;  &lt;p&gt;It’s still early, so it remains to be seen if Microsoft will be able to pull any search market share away from Google, but Bing looks like it may be a good start. The biggest difference is that Bing seems to offer better organization by putting the related searches list along the left side of the search results where you can see it without scrolling. It also provides a search history, and contextual information for each result.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/sdorman/WindowsLiveWriter/Windows7BingSearchConnector_BA9F/image_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://geekswithblogs.net/images/geekswithblogs_net/sdorman/WindowsLiveWriter/Windows7BingSearchConnector_BA9F/image_thumb.png" width="644" height="407" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;From the Live Search blog, Bing is a&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;…new kind of search that goes beyond traditional search engines to help you make faster, more informed decisions. It will do this by combining a great search engine (with powerful new features to improve your results for any query), more organized results, and unique tools to help you make important decisions.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;If you are running Internet Explorer 8, you can install Bing as your search engine through the &lt;a href="http://www.ieaddons.com/in/details/searchhelpers/Bing_Search/" target="_blank"&gt;Add-ons Gallery&lt;/a&gt;, for any other browser Sarah Perez has a good &lt;a href="http://www.readwriteweb.com/archives/how_to_make_bing_your_default_search_engine.php" target="_blank"&gt;summary&lt;/a&gt; of how to accomplish this.&lt;/p&gt;  &lt;p&gt;For Windows 7, I have created a &lt;a href="http://cid-93d618d639ec9651.skydrive.live.com/self.aspx/Public/Search%20Connectors/Bing.osdx" target="_blank"&gt;search connector&lt;/a&gt; you can install to integrate Bing as a federated search site.&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:c461d013-47b8-4bf4-88de-d92e7108ff73" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Windows+7" rel="tag"&gt;Windows 7&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Federated+Search" rel="tag"&gt;Federated Search&lt;/a&gt;,&lt;a href="http://technorati.com/tags/OpenSearch" rel="tag"&gt;OpenSearch&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Bing" rel="tag"&gt;Bing&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=132538"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=132538" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/sdorman/aggbug/132538.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/7cYmxKWaKbvAuLfoznT5FNa6mj4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7cYmxKWaKbvAuLfoznT5FNa6mj4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/7cYmxKWaKbvAuLfoznT5FNa6mj4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7cYmxKWaKbvAuLfoznT5FNa6mj4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=9i4R44Z2Meg:aVQQPeN67-Q:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=9i4R44Z2Meg:aVQQPeN67-Q:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=9i4R44Z2Meg:aVQQPeN67-Q:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=9i4R44Z2Meg:aVQQPeN67-Q:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=9i4R44Z2Meg:aVQQPeN67-Q:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=9i4R44Z2Meg:aVQQPeN67-Q:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=9i4R44Z2Meg:aVQQPeN67-Q:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=9i4R44Z2Meg:aVQQPeN67-Q:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=9i4R44Z2Meg:aVQQPeN67-Q:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=9i4R44Z2Meg:aVQQPeN67-Q:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=9i4R44Z2Meg:aVQQPeN67-Q:wF9xT3WuBAs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=9i4R44Z2Meg:aVQQPeN67-Q:wF9xT3WuBAs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=9i4R44Z2Meg:aVQQPeN67-Q:l6gmwiTKsz0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=l6gmwiTKsz0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=9i4R44Z2Meg:aVQQPeN67-Q:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=9i4R44Z2Meg:aVQQPeN67-Q:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=9i4R44Z2Meg:aVQQPeN67-Q:bcOpcFrp8Mo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=bcOpcFrp8Mo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=9i4R44Z2Meg:aVQQPeN67-Q:YwkR-u9nhCs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=YwkR-u9nhCs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=9i4R44Z2Meg:aVQQPeN67-Q:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=9i4R44Z2Meg:aVQQPeN67-Q:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=9i4R44Z2Meg:aVQQPeN67-Q:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ScottDorman/~4/9i4R44Z2Meg" height="1" width="1"/&gt;</description>
            <dc:creator>Scott Dorman</dc:creator>
            <guid isPermaLink="false">http://geekswithblogs.net/sdorman/archive/2009/06/01/windows-7-bing-search-connector.aspx</guid>
            <pubDate>Mon, 01 Jun 2009 18:16:19 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/sdorman/comments/132538.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/sdorman/archive/2009/06/01/windows-7-bing-search-connector.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/sdorman/comments/commentRss/132538.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/sdorman/services/trackbacks/132538.aspx</trackback:ping>
        <feedburner:origLink>http://geekswithblogs.net/sdorman/archive/2009/06/01/windows-7-bing-search-connector.aspx</feedburner:origLink></item>
        <item>
            <title>Visual Studio 2010 Beta 1</title>
            <category>.NET (General)</category>
            <category>Visual Studio</category>
            <category>CodeProject</category>
            <link>http://feedproxy.google.com/~r/ScottDorman/~3/UTwi9Fcoenc/visual-studio-2010-beta-1.aspx</link>
            <description>&lt;p&gt;I’m still waiting for an “official” announcement, but if you are an MSDN subscriber you will be able to download &lt;a href="http://www.microsoft.com/australia/visualstudio/products/2010/default.mspx" target="_blank"&gt;Visual Studio 2010&lt;/a&gt; Beta 1 later today (May 18), probably around 12:00 PM (PST). If you aren’t an MSDN subscriber, you will be able to download Beta 1 on May 20 through Microsoft Downloads. &lt;/p&gt;  &lt;p&gt;   &lt;/p&gt;&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:d4a7ccef-e259-4569-b391-bc31a73b2aac" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Visual+Studio+2010" rel="tag"&gt;Visual Studio 2010&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=132199"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=132199" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/sdorman/aggbug/132199.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/thlYLjvlbNHu7bEjJmul2vYtrBU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/thlYLjvlbNHu7bEjJmul2vYtrBU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/thlYLjvlbNHu7bEjJmul2vYtrBU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/thlYLjvlbNHu7bEjJmul2vYtrBU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=UTwi9Fcoenc:uKuZn5LdUx4:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=UTwi9Fcoenc:uKuZn5LdUx4:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=UTwi9Fcoenc:uKuZn5LdUx4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=UTwi9Fcoenc:uKuZn5LdUx4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=UTwi9Fcoenc:uKuZn5LdUx4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=UTwi9Fcoenc:uKuZn5LdUx4:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=UTwi9Fcoenc:uKuZn5LdUx4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=UTwi9Fcoenc:uKuZn5LdUx4:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=UTwi9Fcoenc:uKuZn5LdUx4:JEwB19i1-c4"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=UTwi9Fcoenc:uKuZn5LdUx4:JEwB19i1-c4" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=UTwi9Fcoenc:uKuZn5LdUx4:wF9xT3WuBAs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=UTwi9Fcoenc:uKuZn5LdUx4:wF9xT3WuBAs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=UTwi9Fcoenc:uKuZn5LdUx4:l6gmwiTKsz0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=l6gmwiTKsz0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=UTwi9Fcoenc:uKuZn5LdUx4:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=UTwi9Fcoenc:uKuZn5LdUx4:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=UTwi9Fcoenc:uKuZn5LdUx4:bcOpcFrp8Mo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=bcOpcFrp8Mo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=UTwi9Fcoenc:uKuZn5LdUx4:YwkR-u9nhCs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=YwkR-u9nhCs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=UTwi9Fcoenc:uKuZn5LdUx4:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ScottDorman?a=UTwi9Fcoenc:uKuZn5LdUx4:KwTdNBX3Jqk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ScottDorman?i=UTwi9Fcoenc:uKuZn5LdUx4:KwTdNBX3Jqk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ScottDorman/~4/UTwi9Fcoenc" height="1" width="1"/&gt;</description>
            <dc:creator>Scott Dorman</dc:creator>
            <guid isPermaLink="false">http://geekswithblogs.net/sdorman/archive/2009/05/18/visual-studio-2010-beta-1.aspx</guid>
            <pubDate>Mon, 18 May 2009 14:55:10 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/sdorman/comments/132199.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/sdorman/archive/2009/05/18/visual-studio-2010-beta-1.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/sdorman/comments/commentRss/132199.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/sdorman/services/trackbacks/132199.aspx</trackback:ping>
        <feedburner:origLink>http://geekswithblogs.net/sdorman/archive/2009/05/18/visual-studio-2010-beta-1.aspx</feedburner:origLink></item>
    </channel>
</rss>
