<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2enclosuresfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:blogChannel="http://backend.userland.com/blogChannelModule" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" 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:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
  <channel>
    <title>Jay Smith</title>
    <description>Building Code and Communities</description>
    <link>http://jaysmith.us/</link>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>BlogEngine.NET 1.5.0.7</generator>
    <language>en-US</language>
    <blogChannel:blogRoll>http://jaysmith.us/opml.axd</blogChannel:blogRoll>
    <blogChannel:blink>http://www.dotnetblogengine.net/syndication.axd</blogChannel:blink>
    <dc:creator>Jay Smith</dc:creator>
    <dc:title>Jay Smith</dc:title>
    <geo:lat>0.000000</geo:lat>
    <geo:long>0.000000</geo:long>
    <geo:lat>36.040467</geo:lat><geo:long>-94.133765</geo:long><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/JaySmith" type="application/rss+xml" /><feedburner:emailServiceId>JaySmith</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
      <title>Dallas GiveCamp January 15-17, 2010</title>
      <description>&lt;p&gt;&lt;img src="http://wearemicrosoft.com/images/Logo.gif" /&gt;&lt;/p&gt;  &lt;p&gt;GiveCamp Dallas, a.k.a. the We Are Microsoft Charity Challenge Weekend is ramping up for another amazing event!&amp;#160; If you’re interested in participating as a volunteer, visit &lt;a href="http://wearemicrosoft.com"&gt;http://wearemicrosoft.com&lt;/a&gt;, scroll down to the bottom and click on the “&lt;a href="http://wearemicrosoft.com/WAM/Login.aspx"&gt;Start Here&lt;/a&gt;” link underneath the Volunteer sign.&lt;/p&gt;  &lt;p&gt;You can also find out more information at &lt;a href="http://wearemicrosoft.com"&gt;http://wearemicrosoft.com&lt;/a&gt; and &lt;a href="http://givecamp.org"&gt;http://givecamp.org&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;We have had a great presence at this event in years past.&amp;#160; If you are interested in attending please let me know.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JaySmith/~4/PNZ7Irq9xB4" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/JaySmith/~3/PNZ7Irq9xB4/post.aspx</link>
      <author>jay.smith</author>
      <comments>http://jaysmith.us/post/Dallas-GiveCamp-January-15-17-2010.aspx#comment</comments>
      <guid isPermaLink="false">http://jaysmith.us/post.aspx?id=0942a22d-23c1-4841-90c2-190368cb8546</guid>
      <pubDate>Wed, 11 Nov 2009 12:39:00 -1500</pubDate>
      <dc:publisher>jay.smith</dc:publisher>
      <pingback:server>http://jaysmith.us/pingback.axd</pingback:server>
      <pingback:target>http://jaysmith.us/post.aspx?id=0942a22d-23c1-4841-90c2-190368cb8546</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://jaysmith.us/trackback.axd?id=0942a22d-23c1-4841-90c2-190368cb8546</trackback:ping>
      <wfw:comment>http://jaysmith.us/post/Dallas-GiveCamp-January-15-17-2010.aspx#comment</wfw:comment>
      <wfw:commentRss>http://jaysmith.us/syndication.axd?post=0942a22d-23c1-4841-90c2-190368cb8546</wfw:commentRss>
    <feedburner:origLink>http://jaysmith.us/post.aspx?id=0942a22d-23c1-4841-90c2-190368cb8546</feedburner:origLink></item>
    <item>
      <title>Tulsa TechFest 2 Weeks Away</title>
      <description>&lt;p&gt;&lt;a href="http://jaysmith.us/image.axd?picture=TulsaTechFest.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 5px; display: inline; border-top: 0px; border-right: 0px" title="TulsaTechFest" border="0" alt="TulsaTechFest" align="left" src="http://jaysmith.us/image.axd?picture=TulsaTechFest_thumb.gif" width="486" height="60" /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Tulsa TechFest is THE largest developer conference in the Northwest Arkansas/Eastern Oklahoma area.&amp;#160; It is also the original TechFest, if you are a developer in this region this is the conference you won’t want to miss.&amp;#160; &lt;/p&gt;  &lt;p&gt;I will be presenting two sessions; Introduction to Agile Software Development, and Visual Studio 2010 Web.Config Transformations.&amp;#160; The second session will also take a look at corporate deployment challenges and will suggest some strategies to try now, as well as, show how Visual Studio 2010 will help solve them in the future.&lt;/p&gt;  &lt;p&gt;This years event is only 1 day and is on Friday so it is an awesome excuse to start the weekend early and learn something new.&amp;#160; &lt;/p&gt;  &lt;p&gt;Who knows if we get the release candidate for &lt;a href="http://openjeopardy.codeplex.com" target="_blank"&gt;Open Jeopardy&lt;/a&gt; ready we might get to have some fun with that as well. &lt;/p&gt;  &lt;p&gt;David Walker and crew always to a great job with this event.&amp;#160; Here is the info, go a head and register, you know you want to!&lt;/p&gt;  &lt;p&gt;Tulsa TechFest    &lt;br /&gt;Friday, Nov 6, 2009 at OSU – Tulsa    &lt;br /&gt;8:00 AM – 6:30 PM    &lt;br /&gt;Keynote by Joe Fletcher – UX lead for Microsoft Surface team    &lt;br /&gt;13 Tracks – 65 Sessions of top developer, architect, designer and IT pro content    &lt;br /&gt;FREE event – just bring 2 cans of food for the Eastern Oklahoma Food Bank or $2 for the Family and Children’s Services of Tulsa&lt;/p&gt;  &lt;p&gt;Just visit &lt;a href="http://tulsatechfest.com"&gt;http://tulsatechfest.com&lt;/a&gt; to register today!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JaySmith/~4/6OeruXKj5rk" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/JaySmith/~3/6OeruXKj5rk/post.aspx</link>
      <author>jay.smith</author>
      <comments>http://jaysmith.us/post/Tulsa-TechFest-2-Weeks-Away.aspx#comment</comments>
      <guid isPermaLink="false">http://jaysmith.us/post.aspx?id=088065d1-a0a1-4948-94f5-5c275b3e5453</guid>
      <pubDate>Thu, 22 Oct 2009 12:04:44 -1500</pubDate>
      <dc:publisher>jay.smith</dc:publisher>
      <pingback:server>http://jaysmith.us/pingback.axd</pingback:server>
      <pingback:target>http://jaysmith.us/post.aspx?id=088065d1-a0a1-4948-94f5-5c275b3e5453</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://jaysmith.us/trackback.axd?id=088065d1-a0a1-4948-94f5-5c275b3e5453</trackback:ping>
      <wfw:comment>http://jaysmith.us/post/Tulsa-TechFest-2-Weeks-Away.aspx#comment</wfw:comment>
      <wfw:commentRss>http://jaysmith.us/syndication.axd?post=088065d1-a0a1-4948-94f5-5c275b3e5453</wfw:commentRss>
    <feedburner:origLink>http://jaysmith.us/post.aspx?id=088065d1-a0a1-4948-94f5-5c275b3e5453</feedburner:origLink></item>
    <item>
      <title>Microsoft MVP for Another Year</title>
      <description>&lt;p&gt;&lt;a href="http://jaysmith.us/image.axd?picture=image.gif"&gt;&lt;img title="image" style="border-right: 0px; border-top: 0px; display: inline; margin: 0px 5px 5px 0px; border-left: 0px; border-bottom: 0px" height="72" alt="image" src="http://jaysmith.us/image.axd?picture=image_thumb.gif" width="178" border="0" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;I am very pleased to announce that I have had my MVP with Microsoft for ASP .NET re-awarded.&amp;#160; I am extremely honored to receive this award.&amp;#160; Over the last year I have had the privilege to get to know other MVPs and feel awe struck to be among them.&amp;#160; I have learned a lot and hope to continue learning.&lt;/p&gt;  &lt;p&gt;My community is awesome,&amp;#160; I want to give some credit where credit is due.&amp;#160; The Northwest Arkansas developer community is awesome and in my opinion is one of the best have had the honor of working with.&amp;#160; I am going to have to keep my skills sharp and work hard to keep up for next year.&amp;#160; There are several very talented people in my area and I expect to see many of the become MVPs in their own right in the future.&lt;/p&gt;  &lt;p&gt;Thanks to Microsoft for the honor be be an MVP and thanks to my community for helping me get there. &lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JaySmith/~4/1uQugJniCEU" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/JaySmith/~3/1uQugJniCEU/post.aspx</link>
      <author>jay.smith</author>
      <comments>http://jaysmith.us/post/Microsoft-MVP-for-Another-Year.aspx#comment</comments>
      <guid isPermaLink="false">http://jaysmith.us/post.aspx?id=30614492-3954-4953-8b73-8c7be9b6b5fd</guid>
      <pubDate>Mon, 05 Oct 2009 05:34:11 -1500</pubDate>
      <category>Announcements</category>
      <dc:publisher>jay.smith</dc:publisher>
      <pingback:server>http://jaysmith.us/pingback.axd</pingback:server>
      <pingback:target>http://jaysmith.us/post.aspx?id=30614492-3954-4953-8b73-8c7be9b6b5fd</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://jaysmith.us/trackback.axd?id=30614492-3954-4953-8b73-8c7be9b6b5fd</trackback:ping>
      <wfw:comment>http://jaysmith.us/post/Microsoft-MVP-for-Another-Year.aspx#comment</wfw:comment>
      <wfw:commentRss>http://jaysmith.us/syndication.axd?post=30614492-3954-4953-8b73-8c7be9b6b5fd</wfw:commentRss>
    <feedburner:origLink>http://jaysmith.us/post.aspx?id=30614492-3954-4953-8b73-8c7be9b6b5fd</feedburner:origLink></item>
    <item>
      <title>Using WCF Services with Smart Client Application</title>
      <description>&lt;p&gt;&lt;a href="http://jaysmith.us/image.axd?picture=WindowsMobileLogo.jpg"&gt;&lt;img title="WindowsMobileLogo" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin: 0px 5px 5px 0px; border-right-width: 0px" height="126" alt="WindowsMobileLogo" src="http://jaysmith.us/image.axd?picture=WindowsMobileLogo_thumb.jpg" width="240" align="left" border="0" /&gt;&lt;/a&gt; The current project I am assigned to at work is Smart Client application running own Windows CE that communicates with WCF Services that it uses to communicate with SAP via BizTalk Services.&amp;#160; We choose to use WCF because of the power that we felt it would bring to the solution.&amp;#160; What we didn’t realize was the limited support in Visual Studio for consuming WCF Services for a Smart Client application.&lt;/p&gt;  &lt;p&gt;In a WinForms application you have two choices to add an Application Reference to your project you can use the SvcUtil.exe or you can right click on the References node of the solution and select &lt;em&gt;Add Application Reference&lt;/em&gt;.&amp;#160; In the Smart Client world you don’t have either option, you can try to use the SvcUtil.exe but it will not create a proxy that can compile against NetCF libraries because NetCF does not include all the classes referenced from that source code. &lt;/p&gt;  &lt;p&gt;Fortunately we found the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=C8174C14-A27D-4148-BF01-86C2E0953EAB&amp;amp;displaylang=en" target="_blank"&gt;Power Toys for .NET Compact Framework 3.5&lt;/a&gt; which contains NetCFSvcUtil.exe that could be used to generate NetCF complaint service proxies.&amp;#160; Once install the power toys you will find the NetCFSvcUtil.exe in the C:\Program Files (x86)\Microsoft.NET\SDK\CompactFramework\v3.5\bin directory.&lt;/p&gt;  &lt;p&gt;We setup a batch file to generate the service files for us.&amp;#160; So, all we had to do was make sure we check out the files and then run the command file to update the proxies and check the files back in and we are good. &lt;/p&gt;  &lt;p&gt;You should be aware that NetCF does not support all WCF Bindings, it supports: &lt;em&gt;BasicHttpBinding&lt;/em&gt;, &lt;em&gt;CustomBinding&lt;/em&gt;, &lt;em&gt;WindowsMobileMailBinding&lt;/em&gt;, and &lt;em&gt;ExchangeWebServiceMailBinding&lt;/em&gt;.&amp;#160; Andrew Arnott has a post about &lt;a href="http://blogs.msdn.com/andrewarnottms/archive/2007/08/21/the-wcf-subset-supported-by-netcf.aspx" target="_blank"&gt;The WCF subset supported by NetCF&lt;/a&gt; and other good information.&lt;/p&gt;  &lt;p&gt;A good friend and member of our team &lt;a href="http://devlinliles.com/" target="_blank"&gt;Devlin Liles&lt;/a&gt;, has put together a great post, &lt;a href="http://devlinliles.com/post/Batch-File-and-Command-File-running-in-Visual-Studio.aspx"&gt;Batch File and Command File running in Visual Studio&lt;/a&gt;, to show how you can execute a command file from the Visual Studio IDE and use the output window for any text.&amp;#160; I highly recommend you check it out.&lt;/p&gt; &lt;strong&gt;NetCFSvcUtil.exe http://localhost/MyService.svc&lt;/strong&gt;   &lt;p&gt;This will generate the CFClientBase.cs and the MyService.cs files we need to access the WCF Service.&amp;#160; If you want to control the namespace that the proxies get created in you can use the &lt;em&gt;/namespace&lt;/em&gt; argument to specify this.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NetCFSvcUtil.exe namespace:*,MyNameSpace.Proxies http://localhost/MyService.svc&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Likewise you can also control where the files are generated by using the &lt;em&gt;/directory&lt;/em&gt; argument.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NetCFSvcUtil.exe namespace:*,MyNameSpace.Proxies http://localhost/MyService.svc&lt;/strong&gt; &lt;strong&gt;/directory:../MyApp/Proxies&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;There are a lot of other options you can use to control how the proxies are generated you can execute NetCFSvcUtil.exe /? to see all of them and what they do.&lt;/p&gt;  &lt;p&gt;This gets you up and running with WCF Services in a Smart Client application, without the robust configuration that is offered with WinForms or WebForm projects.&amp;#160; In my next post I will walk you through how we configured our WCF Service endpoints and set some custom binding information to control how our clients behaved when consuming the services.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JaySmith/~4/nUMblefOHs0" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/JaySmith/~3/nUMblefOHs0/post.aspx</link>
      <author>jay.smith</author>
      <comments>http://jaysmith.us/post/Using-WCF-Services-with-Smart-Client-Application.aspx#comment</comments>
      <guid isPermaLink="false">http://jaysmith.us/post.aspx?id=ea2fd700-4d80-4654-8156-77008851fe6b</guid>
      <pubDate>Tue, 22 Sep 2009 01:07:30 -1500</pubDate>
      <category>.NET</category>
      <dc:publisher>jay.smith</dc:publisher>
      <pingback:server>http://jaysmith.us/pingback.axd</pingback:server>
      <pingback:target>http://jaysmith.us/post.aspx?id=ea2fd700-4d80-4654-8156-77008851fe6b</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://jaysmith.us/trackback.axd?id=ea2fd700-4d80-4654-8156-77008851fe6b</trackback:ping>
      <wfw:comment>http://jaysmith.us/post/Using-WCF-Services-with-Smart-Client-Application.aspx#comment</wfw:comment>
      <wfw:commentRss>http://jaysmith.us/syndication.axd?post=ea2fd700-4d80-4654-8156-77008851fe6b</wfw:commentRss>
    <feedburner:origLink>http://jaysmith.us/post.aspx?id=ea2fd700-4d80-4654-8156-77008851fe6b</feedburner:origLink></item>
    <item>
      <title>How I Got Started Programming</title>
      <description>&lt;p&gt;This is something I have wanted to do for a long time, and just decided that this it the time.&amp;#160; I saw this first on &lt;a title="Michael Paladino" href="http://www.mpaladino.com/"&gt;Michael Paladino&lt;/a&gt;’s blog.&amp;#160; I always wished I would get called out, but since I didn’t I am calling myself out.&amp;#160; I am also calling out a few others to share their story, and I hope you will pass it on to your closes enemies, eh I mean friends. ;-)&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;How old were you when you started programming?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In my senior year of High School I was overjoyed to be able to take a 1/2 semester programming class.&amp;#160; The computer class had 11 TRS-80 computers where 1 was the main host.&amp;#160; That meant that we all had to share the floppy drive on the host computer for saving data to disk.&amp;#160; It was a basic programming class, of which I still have some of my code.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;How did you get started in programming?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;When I got to college I of course was seeking a computer degree.&amp;#160; There I took all of the standard programming classes for my field which included a lot of Pascal programming, but I think I learned the most writing IRCII bots to share files and keep the channel ops in line.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;What was&amp;#160; your first language?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt; I would have to say that first language I developed in was Pascal or IRC Script.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;What was the first real program that you wrote?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;During college I was working a our local Wal-Mart and got the chance to go work in their Information System Division.&amp;#160; After working there for about a year I was moved to a programming team and started using Visual Basic (starting with version 3) to create reporting tool was used to monitor the health of the companies system by analyzing help desk ticket information. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;What languages have you used since you started programming?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt; I have spent time in several languages since then, C/C++, Perl, Visual Basic v3-6, ASP Classic, C#, VB .NET, and a short year working with Java.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;What was your first professional programming gig?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt; As I mentioned earlier, creating reports with Visual Basic at Wal-Mart was my first paid programming gig.&amp;#160; I learned a ton from my mentor John Lafoon, who I owe a great debt for setting me on my programming path.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;If you knew what you know now, would you have started programming?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Heck yeah!!! I consider myself lucky that I get to do all day what I would be doing if I was independently wealthy had free time on my hands.&amp;#160; A friend of mine, I believe it was Raymond Lewallen, stated like this, “I am a professional problem solver who has chosen software as the tool of choice”.&amp;#160; I love learning and improving my development craftsmanship and spend as much time at home as I do at working improving my skills.&amp;#160; Really that just means I have a lot things to improve.&amp;#160; I like to say “I am failing my way to success” :-)&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;If there was one thing you learned along the way that you would tell new developers, what would that be?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Be a practitioner of your craft, practice your craft and keep your axe sharp.&amp;#160; Set out to learn the fundamentals of your craft don’t just skim the surface to gain enough knowledge to get the job done.&amp;#160; Be a proactive programming, too much of the time programmers are reactive. I need to perform task X lets get the book and hit the reference section and find the example to get me past this hurdle.&amp;#160; This path has little learning, learn enough about your craft so that when the problem arises you already have enough information to formulate the correct action to solve the problem.&amp;#160; In short study and practice your craft.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;What’s the most fun you’ve ever had…programming?&lt;/strong&gt;&lt;/p&gt;  &lt;h5&gt;For the past two years I have attended the &lt;a href="http://wearemicrosoft.com" target="_blank"&gt;We Are Microsoft Charity Challenge&lt;/a&gt;, a &lt;a href="http://givecamp.org" target="_blank"&gt;give camp&lt;/a&gt; event, in the Dallas area.&amp;#160; Where developers come together for a weekend to produce web project for charities.&amp;#160; It is awesome to see dev teams put together produce the awesome project they do in such a short period of time.&lt;/h5&gt;  &lt;h5&gt;&lt;strong&gt;Tag, you’re it!&lt;/strong&gt;&lt;/h5&gt;  &lt;p&gt;I’ve enjoyed hearing other people’s stories, so I think I ought to keep this going.&amp;#160; I’m going to call out:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="Devlin Liles" href="http://devlinliles.com/Blog"&gt;Devlin Liles&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://robtennyson.us" target="_blank"&gt;Rob Tennyson&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="Zachariah Young" href="http://www.zachariahyoung.com/"&gt;Zachariah Young&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="Jeremy Sharp" href="http://letstalkcode.com/"&gt;Jeremy Sharp&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;&lt;img src="http://feeds.feedburner.com/~r/JaySmith/~4/YfCNF9XCaMA" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/JaySmith/~3/YfCNF9XCaMA/post.aspx</link>
      <author>jay.smith</author>
      <comments>http://jaysmith.us/post/How-I-Got-Started-Programming.aspx#comment</comments>
      <guid isPermaLink="false">http://jaysmith.us/post.aspx?id=08e6693e-bbd8-40d7-a55b-dab3a1148c6c</guid>
      <pubDate>Mon, 14 Sep 2009 04:55:07 -1500</pubDate>
      <dc:publisher>jay.smith</dc:publisher>
      <pingback:server>http://jaysmith.us/pingback.axd</pingback:server>
      <pingback:target>http://jaysmith.us/post.aspx?id=08e6693e-bbd8-40d7-a55b-dab3a1148c6c</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://jaysmith.us/trackback.axd?id=08e6693e-bbd8-40d7-a55b-dab3a1148c6c</trackback:ping>
      <wfw:comment>http://jaysmith.us/post/How-I-Got-Started-Programming.aspx#comment</wfw:comment>
      <wfw:commentRss>http://jaysmith.us/syndication.axd?post=08e6693e-bbd8-40d7-a55b-dab3a1148c6c</wfw:commentRss>
    <feedburner:origLink>http://jaysmith.us/post.aspx?id=08e6693e-bbd8-40d7-a55b-dab3a1148c6c</feedburner:origLink></item>
    <item>
      <title>Blog Settings: Turning Off Comments</title>
      <description>&lt;p&gt;I have been thinking about this for a long time and finally decided to make the jump.&amp;#160; I am turning off comments on my blog.&amp;#160; I don’t have very many readers and those of you that do read my blog know me and would contact me via email or phone.&amp;#160; The comments I usually get are from link bots trying to drive traffic to their sites and never add anything to the discussion.&lt;/p&gt;  &lt;p&gt;I have tried turning comment moderation and on and adding the Akismet extension for blogengine.&amp;#160; With that I still get an email that requires some action on my part, mostly because of the moderation rather than Akismet I am sure.&lt;/p&gt;  &lt;p&gt;Maybe if my blog gets more popular and the need for comments arises I will consider turning them on again but until them I am going leave them off and dedicate the time I was using to deal with the few comments I was getting to more value added activities, like writing more post ;-).&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JaySmith/~4/8N1yYcpM9yQ" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/JaySmith/~3/8N1yYcpM9yQ/post.aspx</link>
      <author>jay.smith</author>
      <comments>http://jaysmith.us/post/Blog-Settings-Turning-Off-Comments.aspx#comment</comments>
      <guid isPermaLink="false">http://jaysmith.us/post.aspx?id=511ea066-7a15-430f-97e6-dba8fcfb428c</guid>
      <pubDate>Mon, 24 Aug 2009 11:18:35 -1500</pubDate>
      <category>BlogEngine.NET</category>
      <dc:publisher>jay.smith</dc:publisher>
      <pingback:server>http://jaysmith.us/pingback.axd</pingback:server>
      <pingback:target>http://jaysmith.us/post.aspx?id=511ea066-7a15-430f-97e6-dba8fcfb428c</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://jaysmith.us/trackback.axd?id=511ea066-7a15-430f-97e6-dba8fcfb428c</trackback:ping>
      <wfw:comment>http://jaysmith.us/post/Blog-Settings-Turning-Off-Comments.aspx#comment</wfw:comment>
      <wfw:commentRss>http://jaysmith.us/syndication.axd?post=511ea066-7a15-430f-97e6-dba8fcfb428c</wfw:commentRss>
    <feedburner:origLink>http://jaysmith.us/post.aspx?id=511ea066-7a15-430f-97e6-dba8fcfb428c</feedburner:origLink></item>
    <item>
      <title>Community: SharePoint Saturday Ozarks</title>
      <description>&lt;p&gt;&lt;img title="SharePointSatOzarks" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="116" alt="SharePointSatOzarks" src="http://jaysmith.us/image.axd?picture=SharePointSatOzarks_1.png" width="314" border="0" /&gt; &lt;/p&gt;  &lt;p&gt;SharePoint Saturday Ozark is a one day educational, informative, and lively day filled with sessions from respected SharePoint Professionals and MVP’s. The event was held on July 18&lt;sup&gt;th&lt;/sup&gt; at the South Campus of the &lt;a href="http://www.northark.cc.ar.us/index.php"&gt;North Arkansas College&lt;/a&gt; in Harrison, AR, a beautiful vibrant city located in the heart of the Ozark Mountains. The event was organized by Mark Rackley, &lt;a href="http://sharepointhillbilly.com/"&gt;The SharePoint Hillbilly&lt;/a&gt; and member of the &lt;a href="http://www.odnug.org/"&gt;Ozark .Net User Group&lt;/a&gt;. Over 75 attendees turned out for over 25 sessions covering all aspects of SharePoint from custom development, administration, and branding. There were even a few sessions for .NET Developers. &lt;/p&gt;  &lt;p&gt;The event was fantastic, not only where the sessions awesome in every track, it was a great to see how the SharePoint community is coming together and growing. There were lots of great conversations regarding SharePoint and community going on outside the sessions and continued at the SharePint. A SharePint is an after party event where attendees and let their hair down and relax. The SharePint for this event was held at Hotel Seville which was built in 1929.&lt;/p&gt;  &lt;p&gt;To find out more about SharePoint Saturday or to get started organizing one in your area be sure to check out the SharePoint Saturday website at &lt;a href="http://sharepointsaturday.org"&gt;http://sharepointsaturday.org&lt;/a&gt;. The SharePoint website also list dates and locations for other SharePoint Saturday events. Mark has also posted a great article titled &lt;a href="http://sharepointhillbilly.com/archive/2009/07/23/organizing-a-sharepoint-event--what-you-need-to-know.aspx"&gt;Organizing a SharePoint Event: What you need to Know&lt;/a&gt; to help get you started, it is a great overview of the process of putting on a regional event.&lt;/p&gt;  &lt;p&gt;I would like to thank Mark Rackley and the SharePoint Saturday event staff for putting on an awesome event and I look forward to SharePoint Saturday Ozarks 2010. I hope to see you there.&lt;/p&gt;  &lt;p&gt;This write up also appears on the &lt;a href="http://ineta.org" target="_blank"&gt;INETA&lt;/a&gt; August Newsletter: &lt;a href="http://www.ineta.org/newsletters/2009_08.htm#EventReports" target="_blank"&gt;here&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.ineta.org/newsletters/" target="_blank"&gt;View previous INETA Newsletters and sign up to receive them via email&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JaySmith/~4/pdnTnPOJ_as" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/JaySmith/~3/pdnTnPOJ_as/post.aspx</link>
      <author>jay.smith</author>
      <comments>http://jaysmith.us/post/Community-SharePoint-Saturday-Ozarks.aspx#comment</comments>
      <guid isPermaLink="false">http://jaysmith.us/post.aspx?id=28f5a927-787f-4ef8-80ed-b4a3a1a189d6</guid>
      <pubDate>Mon, 17 Aug 2009 04:34:40 -1500</pubDate>
      <category>Community</category>
      <category>INETA</category>
      <dc:publisher>jay.smith</dc:publisher>
      <pingback:server>http://jaysmith.us/pingback.axd</pingback:server>
      <pingback:target>http://jaysmith.us/post.aspx?id=28f5a927-787f-4ef8-80ed-b4a3a1a189d6</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://jaysmith.us/trackback.axd?id=28f5a927-787f-4ef8-80ed-b4a3a1a189d6</trackback:ping>
      <wfw:comment>http://jaysmith.us/post/Community-SharePoint-Saturday-Ozarks.aspx#comment</wfw:comment>
      <wfw:commentRss>http://jaysmith.us/syndication.axd?post=28f5a927-787f-4ef8-80ed-b4a3a1a189d6</wfw:commentRss>
    <feedburner:origLink>http://jaysmith.us/post.aspx?id=28f5a927-787f-4ef8-80ed-b4a3a1a189d6</feedburner:origLink></item>
    <item>
      <title>Modify Log4Net AdoNetAppender Connection String at run-time</title>
      <description>&lt;p&gt;&lt;img title="Log4Net" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="91" alt="Log4Net" src="http://jaysmith.us/image.axd?picture=Log4Net.jpg" width="387" border="0" /&gt;&lt;/p&gt;  &lt;p&gt;In my every day development I always have to figure out ways to keep my connection information in sync with the environment my application is deployed to.&amp;#160; We currently go through 3 environments; Dev, Test, and Production.&amp;#160; Each with a different set of database and service connections.&amp;#160; Today I was working on setting up &lt;em&gt;Log4Net&lt;/em&gt; to use the &lt;em&gt;AdoNetAppender&lt;/em&gt; and wanted to have it’s connection string move with my &lt;em&gt;ApplicationSettings&lt;/em&gt; so that it would point to the appropriate database for the environment.&amp;#160; After about 3 hours of searching and code pounding I came up with a solution and since it was so hard to find I wanted to share what I learned.&lt;/p&gt;  &lt;p&gt;First a little background of how my application is setup.&amp;#160; I have created the following application settings;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;RunEnvironment&lt;/strong&gt;: used to show where we are deployed, valid values are Development, Test, or Production &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Database_Development&lt;/strong&gt;: stores the database connection for development &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Database_Test&lt;/strong&gt;: stores the database connection for test &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Database_Production&lt;/strong&gt;: stores the database connection for Production &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I also have a static ApplicationSettings class like this:&lt;/p&gt;  &lt;div class="csharpcode"&gt;   &lt;div class="csharpcode"&gt;     &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Collections.Specialized;   &lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Configuration;   &lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; ApplicationSettings   &lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;{   &lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;    &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;readonly&lt;/span&gt; NameValueCollection Settings = ConfigurationManager.AppSettings;   &lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;    &lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; RunEnvironment   &lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;    {  &lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;         get { &lt;span class="kwrd"&gt;return&lt;/span&gt; Settings[&lt;span class="str"&gt;&amp;quot;RunEnvironment&amp;quot;&lt;/span&gt;]; }  &lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;     }  &lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;    &lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  13:  &lt;/span&gt;     &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; DatabaseConnectionString  &lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  14:  &lt;/span&gt;     {  &lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  15:  &lt;/span&gt;         get { &lt;span class="kwrd"&gt;return&lt;/span&gt; Settings[&lt;span class="str"&gt;&amp;quot;Database_&amp;quot;&lt;/span&gt; + RunEnvironment]; }  &lt;/pre&gt;

    &lt;pre&gt;&lt;span class="lnum"&gt;  16:  &lt;/span&gt;     }  &lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  17:  &lt;/span&gt;}&lt;/pre&gt;
  &lt;/div&gt;
  &lt;style type="text/css"&gt;
.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;/div&gt;

&lt;p&gt;This approach allows me to just ask &lt;em&gt;ApplicationSettings&lt;/em&gt; for the &lt;em&gt;DatabaseConnectionString&lt;/em&gt; and it is always adjusted for the correct &lt;em&gt;RunEnvironment&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Ok, so now to the &lt;em&gt;Log4Net&lt;/em&gt; goodness.&amp;#160; I used the XML Configuration in my app.config to configure Log4Net and tried several ways to get the currently active configuration and manipulate it to reflect the new database connection string.&amp;#160; The solution that finally worked was to implement my own &lt;em&gt;AdoNetAppender&lt;/em&gt; derived from the AdoNetAppender and override the &lt;em&gt;ConnectionString&lt;/em&gt; Property.&lt;/p&gt;

&lt;p&gt;Here is the new &lt;strong&gt;&lt;em&gt;CustomAdoNetAppender&lt;/em&gt;&lt;/strong&gt; class:&lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; log4net.Appender;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; CustomAdoNetAppender : AdoNetAppender&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;{&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;new&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; ConnectionString&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;    {&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;        get&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;        {&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;            &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;base&lt;/span&gt;.ConnectionString;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;        }&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;        set&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;        {&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  13:  &lt;/span&gt;            &lt;span class="kwrd"&gt;base&lt;/span&gt;.ConnectionString = ApplicationSettings.DatabaseConnectionString;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  14:  &lt;/span&gt;        }&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  15:  &lt;/span&gt;    }&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  16:  &lt;/span&gt;}&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;&lt;!-- .csharpcode, .csharpcode pre { 	font-size: small; 	color: black; 	font-family: consolas, "Courier New", courier, monospace; 	background-color: #ffffff; 	/*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt  { 	background-color: #f4f4f4; 	width: 100%; 	margin: 0em; } .csharpcode .lnum { color: #606060; } --&gt;&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;The next step, which was left out of many of the post regarding this matter, was to modify the Log4Net configuration in your app/web.config to use the new &lt;em&gt;CustomAdoNetAppender&lt;/em&gt; like below:&lt;/p&gt;

&lt;p&gt;This must be added to the &lt;strong&gt;&lt;em&gt;Configuration-&amp;gt;ConfigSections&lt;/em&gt;&lt;/strong&gt; of you config file&lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&amp;lt;section name=&lt;span class="str"&gt;&amp;quot;log4net&amp;quot;&lt;/span&gt; type=&lt;span class="str"&gt;&amp;quot;log4net.Config.Log4NetConfigurationSectionHandler, log4net&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;&lt;!-- .csharpcode, .csharpcode pre { 	font-size: small; 	color: black; 	font-family: consolas, "Courier New", courier, monospace; 	background-color: #ffffff; 	/*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt  { 	background-color: #f4f4f4; 	width: 100%; 	margin: 0em; } .csharpcode .lnum { color: #606060; } --&gt;&lt;/p&gt;

&lt;p&gt;After the &lt;strong&gt;&lt;em&gt;Configuration-&amp;gt;ConfigSections&lt;/em&gt;&lt;/strong&gt; and at the same level in your config file add the &lt;em&gt;Log4Net&lt;/em&gt;&lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&amp;lt;log4net&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;    &amp;lt;appender name=&lt;span class="str"&gt;&amp;quot;CustomAdoNetAppender&amp;quot;&lt;/span&gt; type=&lt;span class="str"&gt;&amp;quot;MyCustomNamespace.CustomAdoNetAppender&amp;quot;&lt;/span&gt;&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;      &amp;lt;bufferSize &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;100&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;      &amp;lt;connectionType &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;System.Data.SqlClient.SqlConnection, System.Data, &lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;      Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089&amp;quot;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;      &amp;lt;connectionString &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;data source=[DbServer];initial catalog=[DbName];&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;      integrated security=false;persist security info=True;User ID=[DB_USER];Password=[DB_PASS]&amp;quot;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;      &amp;lt;commandText &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;INSERT INTO Log ([Date],[Thread],[Level],[Logger],[Message],[Exception]) &lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;      VALUES (@log_date, @thread, @log_level, @logger, @message, @exception)&amp;quot;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;      &amp;lt;parameter&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;        &amp;lt;parameterName &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;@log_date&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;        &amp;lt;dbType &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;DateTime&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  13:  &lt;/span&gt;        &amp;lt;layout type=&lt;span class="str"&gt;&amp;quot;log4net.Layout.RawTimeStampLayout&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  14:  &lt;/span&gt;      &amp;lt;/parameter&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  15:  &lt;/span&gt;      &amp;lt;parameter&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  16:  &lt;/span&gt;        &amp;lt;parameterName &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;@thread&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  17:  &lt;/span&gt;        &amp;lt;dbType &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;String&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  18:  &lt;/span&gt;        &amp;lt;size &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;255&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  19:  &lt;/span&gt;        &amp;lt;layout type=&lt;span class="str"&gt;&amp;quot;log4net.Layout.PatternLayout&amp;quot;&lt;/span&gt;&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  20:  &lt;/span&gt;          &amp;lt;conversionPattern &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;%thread&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  21:  &lt;/span&gt;        &amp;lt;/layout&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  22:  &lt;/span&gt;      &amp;lt;/parameter&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  23:  &lt;/span&gt;      &amp;lt;parameter&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  24:  &lt;/span&gt;        &amp;lt;parameterName &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;@log_level&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  25:  &lt;/span&gt;        &amp;lt;dbType &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;String&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  26:  &lt;/span&gt;        &amp;lt;size &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;50&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  27:  &lt;/span&gt;        &amp;lt;layout type=&lt;span class="str"&gt;&amp;quot;log4net.Layout.PatternLayout&amp;quot;&lt;/span&gt;&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  28:  &lt;/span&gt;          &amp;lt;conversionPattern &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;%level&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  29:  &lt;/span&gt;        &amp;lt;/layout&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  30:  &lt;/span&gt;      &amp;lt;/parameter&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  31:  &lt;/span&gt;      &amp;lt;parameter&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  32:  &lt;/span&gt;        &amp;lt;parameterName &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;@logger&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  33:  &lt;/span&gt;        &amp;lt;dbType &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;String&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  34:  &lt;/span&gt;        &amp;lt;size &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;255&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  35:  &lt;/span&gt;        &amp;lt;layout type=&lt;span class="str"&gt;&amp;quot;log4net.Layout.PatternLayout&amp;quot;&lt;/span&gt;&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  36:  &lt;/span&gt;          &amp;lt;conversionPattern &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;%logger&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  37:  &lt;/span&gt;        &amp;lt;/layout&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  38:  &lt;/span&gt;      &amp;lt;/parameter&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  39:  &lt;/span&gt;      &amp;lt;parameter&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  40:  &lt;/span&gt;        &amp;lt;parameterName &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;@message&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  41:  &lt;/span&gt;        &amp;lt;dbType &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;String&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  42:  &lt;/span&gt;        &amp;lt;size &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;4000&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  43:  &lt;/span&gt;        &amp;lt;layout type=&lt;span class="str"&gt;&amp;quot;log4net.Layout.PatternLayout&amp;quot;&lt;/span&gt;&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  44:  &lt;/span&gt;          &amp;lt;conversionPattern &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;%message&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  45:  &lt;/span&gt;        &amp;lt;/layout&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  46:  &lt;/span&gt;      &amp;lt;/parameter&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  47:  &lt;/span&gt;      &amp;lt;parameter&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  48:  &lt;/span&gt;        &amp;lt;parameterName &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;@exception&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  49:  &lt;/span&gt;        &amp;lt;dbType &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;String&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  50:  &lt;/span&gt;        &amp;lt;size &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;2000&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  51:  &lt;/span&gt;        &amp;lt;layout type=&lt;span class="str"&gt;&amp;quot;log4net.Layout.ExceptionLayout&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  52:  &lt;/span&gt;      &amp;lt;/parameter&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  53:  &lt;/span&gt;    &amp;lt;/appender&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  54:  &lt;/span&gt;    &amp;lt;appender name=&lt;span class="str"&gt;&amp;quot;ConsoleAppender&amp;quot;&lt;/span&gt; type=&lt;span class="str"&gt;&amp;quot;log4net.Appender.ConsoleAppender&amp;quot;&lt;/span&gt; &amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  55:  &lt;/span&gt;      &amp;lt;layout type=&lt;span class="str"&gt;&amp;quot;log4net.Layout.PatternLayout&amp;quot;&lt;/span&gt;&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  56:  &lt;/span&gt;        &amp;lt;param name=&lt;span class="str"&gt;&amp;quot;Header&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;[Header]\r\n&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  57:  &lt;/span&gt;        &amp;lt;param name=&lt;span class="str"&gt;&amp;quot;Footer&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;[Footer]\r\n&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  58:  &lt;/span&gt;        &amp;lt;param name=&lt;span class="str"&gt;&amp;quot;ConversionPattern&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;%d [%t] %-5p %m%n&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  59:  &lt;/span&gt;      &amp;lt;/layout&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  60:  &lt;/span&gt;    &amp;lt;/appender&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  61:  &lt;/span&gt;    &amp;lt;root&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  62:  &lt;/span&gt;      &amp;lt;level &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;DEBUG&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  63:  &lt;/span&gt;      &amp;lt;appender-&lt;span class="kwrd"&gt;ref&lt;/span&gt; &lt;span class="kwrd"&gt;ref&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;CustomAdoNetAppender&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  64:  &lt;/span&gt;      &amp;lt;appender-&lt;span class="kwrd"&gt;ref&lt;/span&gt; &lt;span class="kwrd"&gt;ref&lt;/span&gt;=&lt;span class="str"&gt;&amp;quot;ConsoleAppender&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  65:  &lt;/span&gt;    &amp;lt;/root&amp;gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  66:  &lt;/span&gt;  &amp;lt;/log4net&amp;gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;&lt;!-- .csharpcode, .csharpcode pre { 	font-size: small; 	color: black; 	font-family: consolas, "Courier New", courier, monospace; 	background-color: #ffffff; 	/*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt  { 	background-color: #f4f4f4; 	width: 100%; 	margin: 0em; } .csharpcode .lnum { color: #606060; } --&gt;&lt;/p&gt;

&lt;p&gt;You can see on line 2 that we specified our new &lt;em&gt;CustomAdoNetAppender&lt;/em&gt; as the &lt;strong&gt;&lt;em&gt;name&lt;/em&gt;&lt;/strong&gt; and pointed the &lt;strong&gt;&lt;em&gt;type&lt;/em&gt;&lt;/strong&gt; to &lt;em&gt;MyCustomNamespace.CustomAdoNetAppender&lt;/em&gt;.&amp;#160; This tells Log4Net what class to use and where to find it.&lt;/p&gt;

&lt;p&gt;Now you have a Custom AdoNetAppender that gets the database connection from your application settings at run-time.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JaySmith/~4/ojjaCxDoRss" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/JaySmith/~3/ojjaCxDoRss/post.aspx</link>
      <author>jay.smith</author>
      <comments>http://jaysmith.us/post/Modify-Log4Net-AdoNetAppender-Connection-String-at-run-time.aspx#comment</comments>
      <guid isPermaLink="false">http://jaysmith.us/post.aspx?id=b8d4a4dc-43d8-4811-ab53-5abe54d1c49e</guid>
      <pubDate>Wed, 05 Aug 2009 03:26:00 -1500</pubDate>
      <category>Log4Net</category>
      <dc:publisher>jay.smith</dc:publisher>
      <pingback:server>http://jaysmith.us/pingback.axd</pingback:server>
      <pingback:target>http://jaysmith.us/post.aspx?id=b8d4a4dc-43d8-4811-ab53-5abe54d1c49e</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://jaysmith.us/trackback.axd?id=b8d4a4dc-43d8-4811-ab53-5abe54d1c49e</trackback:ping>
      <wfw:comment>http://jaysmith.us/post/Modify-Log4Net-AdoNetAppender-Connection-String-at-run-time.aspx#comment</wfw:comment>
      <wfw:commentRss>http://jaysmith.us/syndication.axd?post=b8d4a4dc-43d8-4811-ab53-5abe54d1c49e</wfw:commentRss>
    <feedburner:origLink>http://jaysmith.us/post.aspx?id=b8d4a4dc-43d8-4811-ab53-5abe54d1c49e</feedburner:origLink></item>
    <item>
      <title>Organizing a SharePoint Event: What You Need To Know</title>
      <description>&lt;p&gt;Mark Rackley, &lt;a href="http://www.sharepointhillbilly.com" target="_blank"&gt;The SharePoint Hillbilly&lt;/a&gt;, not only put on a great SharePoint Saturday Ozarks event, but has written a blog post to let everyone know what you should consider if you are thinking about putting on an event like this.&amp;#160; The great thing is that what he discusses could apply to any regional event.&lt;/p&gt;  &lt;p&gt;He has great advice on recruiting speakers, sponsors, selecting the venue, website, and day of venue organization.&lt;/p&gt;  &lt;p&gt;Mark thanks for putting on a great event and sharing your experience with the community.&lt;/p&gt;  &lt;p&gt;Check out the full article here: &lt;a href="http://www.sharepointhillbilly.com/archive/2009/07/23/organizing-a-sharepoint-event--what-you-need-to-know.aspx" target="_blank"&gt;Organizing a SharePoint Event: What You Need To Know&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JaySmith/~4/0frMIRq0OGA" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/JaySmith/~3/0frMIRq0OGA/post.aspx</link>
      <author>jay.smith</author>
      <comments>http://jaysmith.us/post/Organizing-a-SharePoint-Event-What-You-Need-To-Know.aspx#comment</comments>
      <guid isPermaLink="false">http://jaysmith.us/post.aspx?id=67ffeffe-e365-49a0-b611-12e4813f3693</guid>
      <pubDate>Thu, 30 Jul 2009 13:05:36 -1500</pubDate>
      <category>Community</category>
      <dc:publisher>jay.smith</dc:publisher>
      <pingback:server>http://jaysmith.us/pingback.axd</pingback:server>
      <pingback:target>http://jaysmith.us/post.aspx?id=67ffeffe-e365-49a0-b611-12e4813f3693</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://jaysmith.us/trackback.axd?id=67ffeffe-e365-49a0-b611-12e4813f3693</trackback:ping>
      <wfw:comment>http://jaysmith.us/post/Organizing-a-SharePoint-Event-What-You-Need-To-Know.aspx#comment</wfw:comment>
      <wfw:commentRss>http://jaysmith.us/syndication.axd?post=67ffeffe-e365-49a0-b611-12e4813f3693</wfw:commentRss>
    <feedburner:origLink>http://jaysmith.us/post.aspx?id=67ffeffe-e365-49a0-b611-12e4813f3693</feedburner:origLink></item>
    <item>
      <title>Installing the Akismet Extension for BlogEngine.NET</title>
      <description>&lt;p&gt;In my previous post I mentioned I install the &lt;a href="http://www.codethinked.com/?tag=/blogengine.net"&gt;BlogEngine.net Akisment Extension&lt;/a&gt; written by &lt;a href="http://www.codethinked.com"&gt;Justin Etheredge&lt;/a&gt;.&amp;#160; Today &lt;a href="http://justnbusiness.com/" target="_blank"&gt;Justin Chase&lt;/a&gt;, a member of the Microsoft Expression team, has posted great step by step instructions showing how to get it, install it, get a WordPress API key, and configure it. &lt;/p&gt;  &lt;p&gt;Resource: &lt;a href="http://justnbusiness.com/post/2009/07/15/Installing-the-Akismet-Extension-for-BlogEngineNET.aspx" target="_blank"&gt;Installing the Akismet Extension for BlogEngine.NET&lt;/a&gt; by &lt;a href="http://justnbusiness.com" target="_blank"&gt;Justin Chase&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JaySmith/~4/KNLcPLg4_xw" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/JaySmith/~3/KNLcPLg4_xw/post.aspx</link>
      <author>jay.smith</author>
      <comments>http://jaysmith.us/post/Installing-the-Akismet-Extension-for-BlogEngineNET.aspx#comment</comments>
      <guid isPermaLink="false">http://jaysmith.us/post.aspx?id=d5c4de6d-35be-4e46-83f1-1e667ada8d99</guid>
      <pubDate>Wed, 15 Jul 2009 23:13:21 -1500</pubDate>
      <category>BlogEngine.NET</category>
      <dc:publisher>jay.smith</dc:publisher>
      <pingback:server>http://jaysmith.us/pingback.axd</pingback:server>
      <pingback:target>http://jaysmith.us/post.aspx?id=d5c4de6d-35be-4e46-83f1-1e667ada8d99</pingback:target>
      <slash:comments>2</slash:comments>
      <trackback:ping>http://jaysmith.us/trackback.axd?id=d5c4de6d-35be-4e46-83f1-1e667ada8d99</trackback:ping>
      <wfw:comment>http://jaysmith.us/post/Installing-the-Akismet-Extension-for-BlogEngineNET.aspx#comment</wfw:comment>
      <wfw:commentRss>http://jaysmith.us/syndication.axd?post=d5c4de6d-35be-4e46-83f1-1e667ada8d99</wfw:commentRss>
    <feedburner:origLink>http://jaysmith.us/post.aspx?id=d5c4de6d-35be-4e46-83f1-1e667ada8d99</feedburner:origLink></item>
  </channel>
</rss>
