<?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: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:atom="http://www.w3.org/2005/Atom" version="2.0">
  <channel>
    <title>Danny Douglass</title>
    <description>ASP.NET Web Developer &amp; Technology Enthusiast</description>
    <link>http://dannydouglass.com/</link>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>BlogEngine.NET 1.4.0.12</generator>
<language>en-US</language><blogChannel:blogRoll>http://dannydouglass.com/opml.axd</blogChannel:blogRoll><blogChannel:blink>http://www.dotnetblogengine.net/syndication.axd</blogChannel:blink><dc:creator>Danny Douglass</dc:creator><dc:title>Danny Douglass</dc:title><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/DannyDouglass" type="application/rss+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item><title>Who Knew Blogging was Difficult?</title><description>&lt;p&gt;Almost two years ago I began blogging on&amp;nbsp;&lt;a href="http://Blogger.com" target="_blank" title="Blogger"&gt;Google&amp;#39;s Blogger&lt;/a&gt;&amp;nbsp;about all sorts of topics - my life, technology, movies, humor, etc. &amp;nbsp;I even blogged about my&amp;nbsp;&lt;a href="http://dannydouglass.com/post/2007/06/11/My-Top-5-Game-Show-Hosts.aspx" target="_blank"&gt;top 5 favorite game show hosts&lt;/a&gt;. &amp;nbsp;And who can forget&amp;nbsp;&lt;a href="http://dannydouglass.com/post/2007/05/30/Peanut-Butter-Jelly-Time.aspx" target="_blank" title="PBJ Time"&gt;the greatest dancing banana of all time&lt;/a&gt;. &amp;nbsp;Then in late 2007 I learned about&amp;nbsp;&lt;a href="http://dotnetblogengine.net" target="_blank"&gt;BlogEngine.NET&lt;/a&gt;&amp;nbsp;and I promptly switched to that more flexible, customized blogging solution. &amp;nbsp;I was determined to take a more technology-focused approach to my blogging at that point and I began blogging about ASP.NET related topics and&amp;nbsp;&lt;a href="http://dannydouglass.com/page/toolbox.aspx" target="_blank"&gt;extensions&lt;/a&gt;&amp;nbsp;I built for BlogEngine.NET. &amp;nbsp;I was having a GREAT time playing with my new &lt;span class="Apple-style-span" style="text-decoration: line-through"&gt;toy&lt;/span&gt;&amp;nbsp;blog.&lt;/p&gt;&lt;p&gt;Over the next year that followed I blogged fairly frequently (once a week-ish) and I was surprised to find that my blogging built more relationships than I expected. &amp;nbsp;I ended up working with several people on a variety of projects - all of which I had never met before. &amp;nbsp;Again, I was stoked and enjoy ever minute of it!&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="font-weight: bold"&gt;Enter Summer of 2008&lt;/span&gt;. &amp;nbsp;Life started getting more hectic for me on a personal and professional level. &amp;nbsp;I was moving around and having serious issues finding time to dedicate to blogging. &amp;nbsp;After all, blogging was more of a passion project than an attempt to make any money for me. &amp;nbsp;My struggle for blogging motivation can be seen on DannyDouglass.com as it sports a wicked 3 posts in the last 10 months. &amp;nbsp;Nice!&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="font-weight: bold"&gt;&lt;img style="margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 10px" src="http://dannydouglass.com/image.axd?picture=Bauer.jpg" border="1" alt="" align="right" /&gt;Back to the Present&lt;/span&gt;. &amp;nbsp;I&amp;#39;m even more busy now than I was in 2008. &amp;nbsp;I&amp;#39;m in Grad School pursuing a dual degree (Master&amp;#39;s of Science in Software Engineering and an MBA), I recently got a new puppy (who we named Jack &amp;quot;Bauer&amp;quot;!), playing hockey twice a week and volleyball once a week, and trying to have some sort of social life. &amp;nbsp;When am I going to find the time to blog now??&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="font-weight: bold"&gt;You Make the Time&lt;/span&gt;. &amp;nbsp;It&amp;#39;s that simple. &amp;nbsp;I love blogging and I&amp;#39;m embarrased at how extinct my blog is currently. &amp;nbsp;I&amp;#39;m tired of apologizing for not blogging enough in every post I wrote (as Bender pointed out at the rink). &amp;nbsp;&lt;span class="Apple-style-span" style="text-decoration: underline"&gt;I&amp;#39;m getting back in the game&lt;/span&gt;. &amp;nbsp;Over the next 2 weeks I will be updating my blog to get rid of spam comments, update tags/categories and useless posts. &amp;nbsp;I&amp;#39;m going to be updating the design too (DannyDouglass.com v3!).&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span" style="font-weight: bold"&gt;Stay tuned&lt;/span&gt;. &amp;nbsp;I fully encourage any and all finger point, name calling, or whatever your preferred means of insult if I do not follow through with this claim.&lt;/p&gt;&lt;p&gt;(I plan on updating most of my extensions for all those that have emailed regarding them not working with newer versions of BlogEngine.NET)&amp;nbsp;&lt;/p&gt;</description><link>http://dannydouglass.com/post/2009/05/21/bloggingisdifficult.aspx</link><author>name.nospam@nospam.example.com (Danny)</author><comments>http://dannydouglass.com/post/2009/05/21/bloggingisdifficult.aspx#comment</comments><guid>http://dannydouglass.com/post.aspx?id=735f35a1-e646-4ed7-bb77-9cff83384c69</guid><pubDate>Thu, 21 May 2009 09:41:00 -0500</pubDate><category>Blogging</category><category>My Exciting Life</category><dc:publisher>Danny</dc:publisher><pingback:server>http://dannydouglass.com/pingback.axd</pingback:server><pingback:target>http://dannydouglass.com/post.aspx?id=735f35a1-e646-4ed7-bb77-9cff83384c69</pingback:target><slash:comments>74</slash:comments><trackback:ping>http://dannydouglass.com/trackback.axd?id=735f35a1-e646-4ed7-bb77-9cff83384c69</trackback:ping><wfw:comment>http://dannydouglass.com/post/2009/05/21/bloggingisdifficult.aspx#comment</wfw:comment><wfw:commentRss>http://dannydouglass.com/syndication.axd?post=735f35a1-e646-4ed7-bb77-9cff83384c69</wfw:commentRss></item><item><title>Heading to Microsoft PDC 2008 in LA (+ My Agenda)</title><description>&lt;p&gt;Greetings readers, remember me?&amp;#160; I'm that guy that used to blog pretty frequently, but have seriously slacked in recent months.&amp;#160; I &lt;strong&gt;really&lt;/strong&gt; want to get back into blogging and I think PDC is just the thing to get me going.&amp;#160; &lt;a target="_blank" href="http://squaredroot.com"&gt;Troy Goode&lt;/a&gt; and myself will be venturing to LA with a few co-workers to participate in this exciting event.&amp;#160; This is my very first Microsoft conference so I am stoked!&amp;#160; I'll be staying at the very sweet-looking &lt;a target="_blank" href="http://www.figueroahotel.com/"&gt;Hotel Figueroa&lt;/a&gt; near the LA Convention Center.&amp;#160; Feel free to &lt;a target="_blank" href="mailto:ddouglass@gmail.com"&gt;email me&lt;/a&gt; if you are going to be at the conference and want to meet up for post-session drinks and some geek talk.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.dannydouglass.com/image.axd?picture=WindowsLiveWriter/HeadingtoMicrosoftPDC2008inLAMyAgenda_CEB7/PDC_Large_4.jpg"&gt;&lt;img alt="PDC_Large" src="http://www.dannydouglass.com/image.axd?picture=WindowsLiveWriter/HeadingtoMicrosoftPDC2008inLAMyAgenda_CEB7/PDC_Large_thumb_1.jpg" width="400" height="253" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;My PDC Agenda&lt;/h4&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;h5&gt;Sunday Oct. 26 [Pre-Conference]&lt;/h5&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div style="padding-left: 15px" _blank?="_blank?" href="http://microsoftpdc.com/Agenda/Preconference.aspx#creating-rich-internet-applications-with-silverlight"&gt;&lt;a target="_blank" href="http://microsoftpdc.com/Agenda/Preconference.aspx#creating-rich-internet-applications-with-silverlight"&gt;Creating Rich Internet Application with Silverlight&lt;/a&gt;&lt;/a&gt;     &lt;br /&gt;10:00am - 5:45pm     &lt;p&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;h5&gt;Monday Oct. 27 [Day One] &lt;/h5&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div style="padding-left: 15px" _blank?="_blank?" href="http://channel9.msdn.com/pdc2008/BB53/"&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/BB53/"&gt;SharePoint Online: Extending Your Service&lt;/a&gt;&lt;/a&gt;&amp;#160;&lt;strong&gt;OR&lt;/strong&gt; &lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/ES16/"&gt;A Lap Around Cloud Services Part 1&lt;/a&gt;     &lt;br /&gt;11:00am - 12:45pm     &lt;p&gt;&lt;/p&gt;    &lt;p&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/PC47/"&gt;Microsoft Expression Blend: Tips &amp;amp; Tricks&lt;/a&gt;       &lt;br /&gt;12:45pm - 1:30pm &lt;/p&gt;    &lt;p&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/TL16/"&gt;The Future of C#&lt;/a&gt;&amp;#160;&lt;strong&gt;OR&lt;/strong&gt; &lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/PC20/"&gt;ASP.NET 4.0 Roadmap&lt;/a&gt;       &lt;br /&gt;1:45pm - 3:30pm &lt;/p&gt;    &lt;p&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/PC27/"&gt;Microsoft Silverlight, WPF and the Microsoft .NET Framework: Sharing Skills and Code&lt;/a&gt;&amp;#160;&lt;strong&gt;OR&lt;/strong&gt; &lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/PC21/"&gt;ASP.NET MVC: A New Framework for Building Web Applications&lt;/a&gt;       &lt;br /&gt;3:30pm - 5:15pm &lt;/p&gt;    &lt;p&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/TL49/"&gt;Microsoft .NET Framework: Overview and Applications for Babies&lt;/a&gt;&amp;#160;&lt;strong&gt;OR&lt;/strong&gt; &lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/ES01/"&gt;Developing and Deploying Your First Cloud Service&lt;/a&gt;       &lt;br /&gt;5:15pm - 6:30pm &lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;h5&gt;Tuesday Oct. 28 [Day Two] &lt;/h5&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div style="padding-left: 15px" _blank?="_blank?" href="http://channel9.msdn.com/pdc2008/PC24/"&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/PC24/"&gt;Windows 7: Welcome to the Windows 7 Desktop&lt;/a&gt;&lt;/a&gt;     &lt;br /&gt;12:45pm - 1:45pm     &lt;p&gt;&lt;/p&gt;    &lt;p&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/TL23/"&gt;A Lap around &amp;quot;Oslo&amp;quot;&lt;/a&gt;&amp;#160;&lt;strong&gt;OR&lt;/strong&gt; &lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/ES04/"&gt;Essential Cloud Storage Services&lt;/a&gt;       &lt;br /&gt;1:45pm - 3:30pm&lt;/p&gt;    &lt;p&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/PC33/"&gt;Microsoft Visual Studio: Easing ASP.NET Web Deployment&lt;/a&gt;&amp;#160;&lt;strong&gt;OR&lt;/strong&gt; &lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/PC11/"&gt;Microsoft Silverlight Futures: Building Business Focused Applications&lt;/a&gt;       &lt;br /&gt;3:30pm - 4:45pm&lt;/p&gt;    &lt;p&gt;&lt;a target="_blank" href="https://sessions.microsoftpdc.com/timeline.aspx"&gt;ASP.NET and JQuery&lt;/a&gt;       &lt;br /&gt;5:15pm - 6:30pm&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;h5&gt;Wednesday Oct. 29 [Day Three] &lt;/h5&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div style="padding-left: 15px" _blank?="_blank?" href="http://channel9.msdn.com/pdc2008/TL06/"&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/TL06/"&gt;WCF 4.0: Building WCF Services with WF in Microsoft .NET 4.0&lt;/a&gt;&lt;/a&gt;     &lt;br /&gt;10:30am - 11:45am     &lt;p&gt;&lt;/p&gt;    &lt;p&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/PC35/"&gt;Silverlight Controls Roadmap&lt;/a&gt;&amp;#160;&lt;strong&gt;OR &lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/ES25/"&gt;Showcase: Cloud Computing Platform Enables Next Generation Conferencing Solutions&lt;/a&gt;&lt;/strong&gt;       &lt;br /&gt;12:00pm - 12:45pm&lt;/p&gt;    &lt;p&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/TL18/"&gt;&amp;quot;Oslo&amp;quot;: Customizing and Extending the Visual Design Experience&lt;/a&gt;&amp;#160;&lt;strong&gt;OR&lt;/strong&gt; &lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/TL24/"&gt;Improving .NET Application Performance and Scalability&lt;/a&gt;       &lt;br /&gt;1:15pm - 3:00pm&lt;/p&gt;    &lt;p&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/PC30/"&gt;ASP.NET Dynamic Data&lt;/a&gt;&amp;#160;&lt;strong&gt;OR&lt;/strong&gt;&amp;#160; &lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/PC55/"&gt;Oomph: A Microformat Toolkit&lt;/a&gt;       &lt;br /&gt;3:00pm - 4:45pm&lt;/p&gt;    &lt;p&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/ES15/"&gt;Deploying Web Applications with Microsoft Internet Information Services 7.0 and the Web Deployment Tool&lt;/a&gt;       &lt;br /&gt;4:45pm - 6:00pm&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;h5&gt;Thurdsay Oct. 30 [Day Four] &lt;/h5&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div style="padding-left: 15px" _blank?="_blank?" href="http://channel9.msdn.com/pdc2008/BB13/"&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/BB13/"&gt;SharePoint 2007: Creating SharePoint Applications with Visual Studio 2008&lt;/a&gt;&lt;/a&gt;&amp;#160;&lt;strong&gt;OR&lt;/strong&gt; &lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/TL35/"&gt;WCF: Developing RESTful Services&lt;/a&gt;     &lt;br /&gt;8:30am - 10:15am     &lt;p&gt;&lt;/p&gt;    &lt;p&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/SYMP05/"&gt;Services Symposium: Enterprise Grade Cloud Applications&lt;/a&gt;&amp;#160;&lt;strong&gt;OR&lt;/strong&gt; &lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/PC29/"&gt;Microsoft Silverlight 2: Control Model&lt;/a&gt;       &lt;br /&gt;10:15am - 12:00pm&lt;/p&gt;    &lt;p&gt;&lt;a target="_blank" href="http://channel9.msdn.com/pdc2008/PC45/"&gt;WPF: Data-centric Applications Using the DataGrid and Ribbon Controls&lt;/a&gt;       &lt;br /&gt;12:00pm - 1:45pm&lt;/p&gt; &lt;/div&gt;</description><link>http://dannydouglass.com/post/2008/10/23/Heading-to-Microsoft-PDC-2008.aspx</link><author>name.nospam@nospam.example.com (Danny)</author><comments>http://dannydouglass.com/post/2008/10/23/Heading-to-Microsoft-PDC-2008.aspx#comment</comments><guid>http://dannydouglass.com/post.aspx?id=bad8c1fe-bca1-4647-88e0-645697140ec0</guid><pubDate>Thu, 23 Oct 2008 14:42:00 -0500</pubDate><category>ASP.NET</category><category>Tech Entertainment</category><dc:publisher>Danny</dc:publisher><pingback:server>http://dannydouglass.com/pingback.axd</pingback:server><pingback:target>http://dannydouglass.com/post.aspx?id=bad8c1fe-bca1-4647-88e0-645697140ec0</pingback:target><slash:comments>68</slash:comments><trackback:ping>http://dannydouglass.com/trackback.axd?id=bad8c1fe-bca1-4647-88e0-645697140ec0</trackback:ping><wfw:comment>http://dannydouglass.com/post/2008/10/23/Heading-to-Microsoft-PDC-2008.aspx#comment</wfw:comment><wfw:commentRss>http://dannydouglass.com/syndication.axd?post=bad8c1fe-bca1-4647-88e0-645697140ec0</wfw:commentRss></item><item><title>How did I get started in software development?</title><description>&lt;p&gt;Tag, I'm it.&amp;nbsp; &lt;a href="http://frickinsweet.com/ryanlanciaux.com/" target="_blank"&gt;Ryan Lanciaux&lt;/a&gt; called me out on a &lt;a href="http://frickinsweet.com/ryanlanciaux.com/post/How-did-I-get-started-in-software-development.aspx" target="_blank"&gt;recent post&lt;/a&gt; to continue the chain of developers writing a blog post on how they got started in development.&amp;nbsp; &lt;a href="http://www.michaeleatonconsulting.com/blog/Default.aspx" target="_blank"&gt;Michael Eaton&lt;/a&gt; kicked this all of with &lt;a href="http://www.michaeleatonconsulting.com/blog/archive/2008/06/04/how-did-you-get-started-in-software-development.aspx" target="_blank"&gt;this post&lt;/a&gt;.&amp;nbsp; So here goes nothing...&lt;/p&gt; &lt;h5&gt;How old were you when you first started programming?&lt;/h5&gt; &lt;p&gt;I first started programming was in college (&lt;a href="http://umw.edu" target="_blank"&gt;University of Mary Washington&lt;/a&gt;) during my freshman year when I decided pre-med was not for me.&lt;/p&gt; &lt;h5&gt;How did you get started programming?&lt;/h5&gt; &lt;p&gt;I took a few web design classes in high school that initially got me interested in software development.&amp;nbsp; After thoroughly despising my college freshman biology class I picked up an introductory level CS class and decided it was definitely for me (even if the language it was taught in wasn't - Ada 95, yikes!).&lt;/p&gt; &lt;h5&gt;What was your first language?&lt;/h5&gt; &lt;p&gt;Ada 95, gross.&lt;/p&gt; &lt;h5&gt;What was the first real program you wrote?&lt;/h5&gt; &lt;p&gt;Hmmm, I would have to say a laptop inventory system for VDOT (Virginia Department of Transportation), which replaced their wicked-effective 3x5 card "system".&lt;/p&gt; &lt;h5&gt;What languages have you used since you started programming?&lt;/h5&gt; &lt;p&gt;C#, VB, Java, JavaScript, C++, Motorola 68K, Assembly Language, Ada 95, Basic, Fortran - that's most of them anyway.&lt;/p&gt; &lt;h5&gt;What was your first professional gig?&lt;/h5&gt; &lt;p&gt;My first post-college professional gig was for a Germanna Community College where I joined on as their webmaster and performed a complete website redesign.&amp;nbsp; Dynamic class schedules hooked into the VCCS (Virginia Community College System) central PeopleSoft repository was one of the more successful changes I initiated.&amp;nbsp; Unfortunately they got someone in that has trashed the site since then, oh well.&lt;/p&gt; &lt;h5&gt;If you knew then what you know no, would you have started programming?&lt;/h5&gt; &lt;p&gt;Hands-down, Yes.&amp;nbsp; I love what I do.&lt;/p&gt; &lt;h5&gt;If there is one thing you learned along the way that you would tell new developers, what would it be?&lt;/h5&gt; &lt;p&gt;Never stop learning.&amp;nbsp; RSS Readers rock.&lt;/p&gt; &lt;h5&gt;&lt;/h5&gt; &lt;h5&gt;What's the most fun you've ever had programming?&lt;/h5&gt; &lt;p&gt;When I first made the transition from ASP to ASP.NET I couldn't get enough of the framework.&lt;/p&gt; &lt;h5&gt;Who are you calling out?&lt;/h5&gt; &lt;p&gt;&lt;br&gt;&lt;a href="http://SquaredRoot.com" target="_blank"&gt;Troy Goode&lt;/a&gt;&lt;br&gt;&lt;a href="http://stevenharman.net" target="_blank"&gt;Steve Harman&lt;/a&gt;&lt;/p&gt;</description><link>http://dannydouglass.com/post/2008/07/16/HowDidIGetStartedInSoftwareDevelopment.aspx</link><author>name.nospam@nospam.example.com (Danny)</author><comments>http://dannydouglass.com/post/2008/07/16/HowDidIGetStartedInSoftwareDevelopment.aspx#comment</comments><guid>http://dannydouglass.com/post.aspx?id=45b4bf90-5426-49fe-b526-e3be9094c8c5</guid><pubDate>Wed, 16 Jul 2008 10:28:00 -0500</pubDate><category>Blogging</category><category>Dev. Tips &amp; Tools</category><category>My Exciting Life</category><category>Tech Entertainment</category><dc:publisher>Danny</dc:publisher><pingback:server>http://dannydouglass.com/pingback.axd</pingback:server><pingback:target>http://dannydouglass.com/post.aspx?id=45b4bf90-5426-49fe-b526-e3be9094c8c5</pingback:target><slash:comments>70</slash:comments><trackback:ping>http://dannydouglass.com/trackback.axd?id=45b4bf90-5426-49fe-b526-e3be9094c8c5</trackback:ping><wfw:comment>http://dannydouglass.com/post/2008/07/16/HowDidIGetStartedInSoftwareDevelopment.aspx#comment</wfw:comment><wfw:commentRss>http://dannydouglass.com/syndication.axd?post=45b4bf90-5426-49fe-b526-e3be9094c8c5</wfw:commentRss></item><item><title>Flickr Gallery v1.0 Released!</title><description>&lt;p&gt;My apologies for the delay, but I have (finally) put together the release of my Flickr Gallery for BlogEngine.NET, or any other website for that matter.&amp;nbsp; BlogEngine.NET users should understand this is not a typical "extension" where you drop a .cs file into the App_Code directory.&amp;nbsp; It is a stand-alone section that can be dropped into your BlogEngine.NET instance.&amp;nbsp; You can see an example implementation live on my blog at &lt;a href="http://DannyDouglass.com/Photos/" target="_blank"&gt;http://DannyDouglass.com/Photos/&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;&lt;a href="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/FlickrGalleryv1.0Released_B930/image_2.png" target="_blank"&gt;&lt;img height="349" alt="Flickr Gallery v1.0" src="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/FlickrGalleryv1.0Released_B930/image_thumb.png" width="450"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;My &lt;a href="http://dannydouglass.com/post/2008/06/11/Flickr-Gallery-for-BlogEngine.aspx" target="_blank"&gt;previous post&lt;/a&gt; goes into more detail about this code plug-in.&amp;nbsp; I would highly recommend reading that before installing Flickr Gallery on your website/blog.&amp;nbsp; Here's a quick recap of the feature list: &lt;/p&gt; &lt;ul&gt; &lt;li&gt;Integration with Flickr  &lt;li&gt;Set (Album) Support  &lt;li&gt;Title/Description Support  &lt;li&gt;Flickr Slideshow Integration  &lt;li&gt;&lt;a href="http://www.nickstakenburg.com/projects/lightview/"&gt;LightView&lt;/a&gt; Integration  &lt;li&gt;Automatic Paging (Configurable)  &lt;li&gt;Utilizes Flickr's Bandwidth for image loading  &lt;li&gt;and more! &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;I've also installed the generic version of the Flickr Gallery to a default BlogEngine.NET 1.4 instance that can be downloaded at &lt;a title="http://DannyDouglass.com/file.axd?file=BlogEnginePlusFlickrGallery.zip" href="http://DannyDouglass.com/file.axd?file=BlogEnginePlusFlickrGallery.zip"&gt;http://DannyDouglass.com/file.axd?file=BlogEnginePlusFlickrGallery.zip&lt;/a&gt;. &lt;/p&gt; &lt;h4&gt;Installation Steps for BlogEngine.NET 1.4&lt;/h4&gt; &lt;ol&gt; &lt;li&gt;Download the Installation Package: &lt;a title="http://www.dannydouglass.com/file.axd?file=FlickrGalleryInstallation.zip" href="http://dannydouglass.com/file.axd?file=FlickrGalleryInstallation.zip"&gt;http://www.dannydouglass.com/file.axd?file=FlickrGalleryInstallation.zip&lt;/a&gt; and unzip the contents.  &lt;li&gt;Add References to &lt;strong&gt;FlickrGallery.dll&lt;/strong&gt; and&lt;strong&gt;FlickrNet.dll&lt;/strong&gt;  &lt;li&gt;Add the following code to your web.config &lt;strong&gt;appSettings&lt;/strong&gt; section and replace the placeholders with your Flickr Account information. &lt;br&gt;&lt;br&gt; &lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&amp;lt;!-- flickr integration settings--&amp;gt;&lt;/pre&gt;&lt;pre&gt;&amp;lt;add key=&lt;span class="str"&gt;"flickrAPIKey"&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;"###FlickrAPIKey###"&lt;/span&gt; /&amp;gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&amp;lt;add key=&lt;span class="str"&gt;"flickrAPISharedSecret"&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;"###FlickrAPISharedSecret###"&lt;/span&gt; /&amp;gt;&lt;/pre&gt;&lt;pre&gt;&amp;lt;add key=&lt;span class="str"&gt;"flickrUserId"&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;"###FlickrUserId###"&lt;/span&gt; /&amp;gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&amp;lt;add key=&lt;span class="str"&gt;"flickrSetUrl"&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;"http://flickr.com/photos/ddouglass/sets/$id/"&lt;/span&gt; /&amp;gt;&lt;/pre&gt;&lt;pre&gt;&amp;lt;add key=&lt;span class="str"&gt;"flickrPageSize"&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;"24"&lt;/span&gt;/&amp;gt; &amp;lt;!-- enter 0 to disable paging --&amp;gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&amp;lt;!-- end flickr integration settings--&amp;gt;&lt;/pre&gt;&lt;br&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;li&gt;Copy the "Photos" directory into the root of your website 
&lt;li&gt;If you are using any theme besides the standard BlogEngine theme, replace the Master Page File value in the following files the Photos/Default.aspx &amp;amp; Photos/Albums/Default.asp &lt;br&gt;&lt;br&gt;
&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;MasterPageFile=&lt;span class="str"&gt;"~/themes/Standard/site.master"&lt;/span&gt;&lt;/pre&gt;&lt;br&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;li&gt;Add the following script references to your site.master file: &lt;br&gt;&lt;br&gt;
&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&amp;lt;script type=&lt;span class="str"&gt;"text/javascript"&lt;/span&gt; src=&lt;span class="str"&gt;"../../photos/js/prototype.js"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;pre&gt;&amp;lt;script type=&lt;span class="str"&gt;"text/javascript"&lt;/span&gt; src=&lt;span class="str"&gt;"../../photos/js/scriptaculous.js?load=effects"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&amp;lt;script type=&lt;span class="str"&gt;"text/javascript"&lt;/span&gt; src=&lt;span class="str"&gt;"../../photos/js/lightview.js"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;pre&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;li&gt;Add your navigation link to your site.master page to point to &lt;a href="http://yourwebsite.com/Photos/"&gt;http://yourwebsite.com/Photos/&lt;/a&gt; and your done! &lt;/li&gt;&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Helpful Flickr Links&lt;/strong&gt; &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Flickr API Key - &lt;a href="http://www.flickr.com/services/api/keys/"&gt;http://www.flickr.com/services/api/keys/&lt;/a&gt; 
&lt;li&gt;Flickr API Secret Shared Key - &lt;a href="http://www.flickr.com/services/api/keys/"&gt;http://www.flickr.com/services/api/keys/&lt;/a&gt; 
&lt;li&gt;Flickr Username - &lt;a href="http://idgettr.com/"&gt;http://idgettr.com/&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;I could have spent more time organizing the code in this release a little more, but I decided I would rather get v1 out there since I have procrastinated getting it out.&amp;nbsp; I will streamline the release for the next version. &lt;/p&gt;
&lt;p&gt;Hopefully you enjoy this release as much as I do.&amp;nbsp; Feel free to send any suggestions/bugs to &lt;a href="mailto:ddouglass@gmail.com"&gt;ddouglass@gmail.com&lt;/a&gt;.&amp;nbsp; I plan on doing a serious of "how to" posts to explain how to customize the code in the near future.&amp;nbsp; Cheers! &lt;/p&gt;</description><link>http://dannydouglass.com/post/2008/07/15/FlickrGalleryV1Release.aspx</link><author>name.nospam@nospam.example.com (Danny)</author><comments>http://dannydouglass.com/post/2008/07/15/FlickrGalleryV1Release.aspx#comment</comments><guid>http://dannydouglass.com/post.aspx?id=7eb9ee3f-4c6b-45a6-8de9-fefe864e02e7</guid><pubDate>Tue, 15 Jul 2008 13:10:00 -0500</pubDate><category>ASP.NET</category><category>Blogging</category><category>Dev. Tips &amp; Tools</category><category>Software</category><dc:publisher>Danny</dc:publisher><pingback:server>http://dannydouglass.com/pingback.axd</pingback:server><pingback:target>http://dannydouglass.com/post.aspx?id=7eb9ee3f-4c6b-45a6-8de9-fefe864e02e7</pingback:target><slash:comments>185</slash:comments><trackback:ping>http://dannydouglass.com/trackback.axd?id=7eb9ee3f-4c6b-45a6-8de9-fefe864e02e7</trackback:ping><wfw:comment>http://dannydouglass.com/post/2008/07/15/FlickrGalleryV1Release.aspx#comment</wfw:comment><wfw:commentRss>http://dannydouglass.com/syndication.axd?post=7eb9ee3f-4c6b-45a6-8de9-fefe864e02e7</wfw:commentRss></item><item><title>Flickr Gallery for BlogEngine.NET!</title><description>&lt;p&gt;I have finally followed through with the promise to offer a Flickr-integrated photo gallery that can be easily installed with BlogEngine.NET.&amp;#160; If you have spent any time following my blog you know that I have dabbled with a variety of other media extensions (see &lt;a href="http://dannydouglass.com/post/2008/02/New-BlogEngine-Extension-SlideShow-Photo-Gallery.aspx" target="_blank"&gt;SlideShow Extension&lt;/a&gt; for example).&amp;#160; My previous attempt at a photo gallery required far too much manual work to be usable (hence why it never was updated after the initial release).&amp;#160; That is no longer an issue since all you need to do is copy a few files, set a few configuration values, and presto - instant Flickr Gallery on your website/blog!&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;What does it look like?     &lt;br /&gt;&lt;/strong&gt;These screenshots are taken from the demo website that I will be offering for download.&amp;#160; The demo utilizes that standard BlogEngine.NET 1.3.1 installation.&amp;#160; I have not messed too much with the aesthetics, but rest assured that you will be have full control over the look and feel.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Sets (Albums) View     &lt;br /&gt;&lt;/strong&gt;&lt;strong&gt;&lt;a href="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/FlickrGalleryforBlogEngine.NET_B4DD/Sets%20(Albums)%20Page_2.png" target="_blank"&gt;&lt;img height="309" alt="Sets (Albums) Page" src="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/FlickrGalleryforBlogEngine.NET_B4DD/Sets%20(Albums)%20Page_thumb.png" width="450" /&gt;&lt;/a&gt; &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Photo Gallery View     &lt;br /&gt;&lt;a href="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/FlickrGalleryforBlogEngine.NET_B4DD/Gallery%20Page_2.png" target="_blank"&gt;&lt;img height="272" alt="Gallery Page" src="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/FlickrGalleryforBlogEngine.NET_B4DD/Gallery%20Page_thumb.png" width="450" /&gt;&lt;/a&gt; &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Image View - LightView!&lt;/strong&gt;    &lt;br /&gt;&lt;a href="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/FlickrGalleryforBlogEngine.NET_B4DD/Image%20View_2.png" target="_blank"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="276" alt="Image View" src="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/FlickrGalleryforBlogEngine.NET_B4DD/Image%20View_thumb.png" width="454" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;How about sharing a feature list?&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Integration with Flickr &lt;/li&gt;    &lt;li&gt;Set (Album) Support &lt;/li&gt;    &lt;li&gt;Title/Description Support &lt;/li&gt;    &lt;li&gt;Flickr Slideshow Integration &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.nickstakenburg.com/projects/lightview/" target="_blank"&gt;LightView&lt;/a&gt; Integration &lt;/li&gt;    &lt;li&gt;Automatic Paging (Configurable) &lt;/li&gt;    &lt;li&gt;Utilizes Flickr's Bandwidth for image loading &lt;/li&gt;    &lt;li&gt;and more! &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;How does it work?      &lt;br /&gt;&lt;/strong&gt;Pure Magic.&amp;#160; Ok, maybe not magic.&amp;#160; I have used &lt;a href="http://www.codeplex.com/FlickrNet" target="_blank"&gt;FlickrNet&lt;/a&gt; as the fundamental module to communicate to the Flickr API, but implemented it in a separate project to allow me to use the wonders of &lt;a href="http://www.google.com/url?sa=t&amp;amp;ct=res&amp;amp;cd=4&amp;amp;url=http%3A%2F%2Fweblogs.asp.net%2Fscottgu%2Farchive%2Ftags%2FLINQ%2Fdefault.aspx&amp;amp;ei=iAJQSJ_gMqHAiAGpsbDoDA&amp;amp;usg=AFQjCNGeIG320mJig4p0F427AxEIQqdbzg&amp;amp;sig2=VeaVt4ZVzUO-U9zFp9UNdg" target="_blank"&gt;LINQ&lt;/a&gt;.&amp;#160; BlogEngine.NET &lt;a href="http://www.codeplex.com/blogengine/WorkItem/View.aspx?WorkItemId=5945" target="_blank"&gt;will not be upgraded&lt;/a&gt; to run under the 3.5 Framework until version 1.5 is released unfortunately.&amp;#160; No worries, I have done the hard work for you and will be providing a DLL that you can use in your current version of BlogEngine.NET.&amp;#160; Not too shabby, eh? =]&lt;/p&gt;  &lt;p&gt;Let me explain a little bit about Flickr.&amp;#160; If you are using the free version of Flickr you &lt;strong&gt;could&lt;/strong&gt; run into bandwidth issues.&amp;#160; Only Flickr pro accounts (mere $25/year) have the advantage of unlimited bandwidth.&amp;#160; If you plan on using this gallery I would recommend purchasing a pro account, &lt;strong&gt;but it is not required&lt;/strong&gt;.&amp;#160; You will need a few pieces of information from your Flickr account eiher way:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Flickr API Key - &lt;a title="http://www.flickr.com/services/api/keys/" href="http://www.flickr.com/services/api/keys/"&gt;http://www.flickr.com/services/api/keys/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Flickr API Secret Shared Key - &lt;a title="http://www.flickr.com/services/api/keys/" href="http://www.flickr.com/services/api/keys/"&gt;http://www.flickr.com/services/api/keys/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Flickr Username - &lt;a title="http://idgettr.com/" href="http://idgettr.com/"&gt;http://idgettr.com/&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Depending on your current account settings you also may need to edit your &lt;a href="http://www.flickr.com/account?tab=privacy" target="_blank"&gt;privacy/permission settings&lt;/a&gt; (default settings worked fine if you have not changed them).&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;When will you be posting steps to install this on my blog/website??      &lt;br /&gt;&lt;/strong&gt;Very soon!&amp;#160; I'm aiming to complete the installation on my blog today as a test run for the installation process.&amp;#160; If that goes well I will have the code/directions up within a day or two.&amp;#160; You can &lt;a href="http://feeds.feedburner.com/DannyDouglass" target="_blank"&gt;subscribe to my site&lt;/a&gt; to make sure you are updated as soon as it is up.&lt;/p&gt;  &lt;p&gt;Feel free to leave comments on any suggestions you have regarding features/usability.&amp;#160; They probably will not make it into the initial release, but I will consider them for any subsequent versions.&lt;/p&gt; </description><link>http://dannydouglass.com/post/2008/06/11/Flickr-Gallery-for-BlogEngine.aspx</link><author>name.nospam@nospam.example.com (Danny)</author><comments>http://dannydouglass.com/post/2008/06/11/Flickr-Gallery-for-BlogEngine.aspx#comment</comments><guid>http://dannydouglass.com/post.aspx?id=b102dd71-a427-4cb3-ad1e-d357cacb6130</guid><pubDate>Wed, 11 Jun 2008 13:52:42 -0500</pubDate><category>ASP.NET</category><category>Blogging</category><category>Dev. Tips &amp; Tools</category><dc:publisher>Danny</dc:publisher><pingback:server>http://dannydouglass.com/pingback.axd</pingback:server><pingback:target>http://dannydouglass.com/post.aspx?id=b102dd71-a427-4cb3-ad1e-d357cacb6130</pingback:target><slash:comments>127</slash:comments><trackback:ping>http://dannydouglass.com/trackback.axd?id=b102dd71-a427-4cb3-ad1e-d357cacb6130</trackback:ping><wfw:comment>http://dannydouglass.com/post/2008/06/11/Flickr-Gallery-for-BlogEngine.aspx#comment</wfw:comment><wfw:commentRss>http://dannydouglass.com/syndication.axd?post=b102dd71-a427-4cb3-ad1e-d357cacb6130</wfw:commentRss></item><item><title>BlogEngine.NET 1.4 - What's the Status?</title><description>&lt;p align="left"&gt;
&lt;img style="padding: 10px" class="plainImage" src="http://dotnetblogengine.net/themes/blogenginehome/images/benlogo80.gif" alt="" align="right" /&gt;&lt;strong&gt;Update&lt;/strong&gt;: Mads responded in the &lt;a href="http://dannydouglass.com/post/2008/06/BlogEngineNET-Release-Update.aspx#Comment17a601ba-57bd-4821-8113-31ee29efe0b3"&gt;comments below&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Let me begin by clearing stating that I think BlogEngine.NET is an
amazing open source application.&amp;nbsp; I&amp;#39;m a strong proponent of this blog
provider and the team behind it.&amp;nbsp; I have found that the platform is
incredibly flexible and easy to use.&amp;nbsp; There is an amazing community
behind the project - something I believe to be one of it&amp;#39;s strongest
assets.&amp;nbsp; Overall, Mads and team have provided the community with a
solid ASP.NET blogging tool.&amp;nbsp; However...&lt;br /&gt;
&lt;br /&gt;
I have delayed a number of &lt;a id="xm7g" href="http://dotnetblogengine.net/page/extensions.aspx" target="_blank" title="extensions"&gt;extensions&lt;/a&gt; that came to mind until the release of 1.4 (see my lack of recent blog entries).&amp;nbsp; Mads Kristensen has a &lt;a id="lhte" href="http://blog.madskristensen.dk/post/New-features-in-the-next-BlogEngineNET.aspx" target="_blank" title="great post"&gt;great post&lt;/a&gt; where he discusses the new features that will be available in BlogEngine.NET 1.4.&amp;nbsp; The &lt;a id="omlq" href="http://blog.madskristensen.dk/post/Video-widget-framework.aspx" target="_blank" title="widget framework"&gt;widget framework&lt;/a&gt;
really sparked some excitement on my part in particular.&amp;nbsp; In that same
features post Mads writes that he anticipates the release to be
sometime in late May.&amp;nbsp; Only 9 days into June I really cannot say that
they really missed any hard release date.&amp;nbsp; After all, it is not like I
am paying for this software or any type of support.&amp;nbsp; The last real
update we have seen on version 1.4 was over two months ago though!&amp;nbsp; I
think it is a fair to say that I am a little disappointed with the lack
of any recent communication.&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
Mads, if you read this, any chance you can post even an informal update
on BE 1.4?&amp;nbsp; I know that I am really excited about the upcoming
release!&amp;nbsp; Thanks again for all the hard work that the BlogEngine.NET
team and the community has done to get this next release ready!!&lt;br /&gt;
&lt;br /&gt;
On another note, I have created an integrated Flickr Gallery using &lt;a id="p69p" href="http://www.codeplex.com/Wiki/View.aspx?ProjectName=FlickrNet" target="_blank" title="FlickrNet"&gt;FlickrNet&lt;/a&gt; that works with BlogEngine.NET 1.3.x.&amp;nbsp; I will be posting a &amp;quot;how-to&amp;quot; guide tomorrow with all the source code.&amp;nbsp; Stay tuned!&lt;br /&gt;

&lt;/p&gt;
</description><link>http://dannydouglass.com/post/2008/06/09/BlogEngineNET-Release-Update.aspx</link><author>name.nospam@nospam.example.com (Danny)</author><comments>http://dannydouglass.com/post/2008/06/09/BlogEngineNET-Release-Update.aspx#comment</comments><guid>http://dannydouglass.com/post.aspx?id=e7409654-70cf-481c-9bc0-784fa8e99b85</guid><pubDate>Mon, 09 Jun 2008 16:04:00 -0500</pubDate><category>Blogging</category><category>Software</category><dc:publisher>Danny</dc:publisher><pingback:server>http://dannydouglass.com/pingback.axd</pingback:server><pingback:target>http://dannydouglass.com/post.aspx?id=e7409654-70cf-481c-9bc0-784fa8e99b85</pingback:target><slash:comments>280</slash:comments><trackback:ping>http://dannydouglass.com/trackback.axd?id=e7409654-70cf-481c-9bc0-784fa8e99b85</trackback:ping><wfw:comment>http://dannydouglass.com/post/2008/06/09/BlogEngineNET-Release-Update.aspx#comment</wfw:comment><wfw:commentRss>http://dannydouglass.com/syndication.axd?post=e7409654-70cf-481c-9bc0-784fa8e99b85</wfw:commentRss></item><item><title>I'm still here - I swear!</title><description>&lt;p&gt;
It has been a few weeks since I last blogged, but I wanted to assure everyone that I have not disappeared.&amp;nbsp; The last month has presented a lot of time consuming projects, tasks, and travel that has left me little time to blog. :/ &lt;br /&gt;
&lt;br /&gt;
&lt;img class="plainImage" src="http://dannydouglass.com/image.axd?picture=WhereBeDannyDouglass.jpg" alt="" /&gt;
&lt;/p&gt;
&lt;p&gt;
Currently I am playing with the &lt;a href="http://www.codeplex.com/aspnet" target="_blank" title="ASP.NET MVC Framework"&gt;ASP.NET MVC Framework&lt;/a&gt;, &lt;a href="http://jQuery.com" target="_blank" title="jQuery Homepage"&gt;jQuery&lt;/a&gt;, and a Flickr-integrated viewing gallery implementing FlickrNet.&amp;nbsp; I am nearly finished the prototype and I think it is pretty neat!&amp;nbsp; A lot of you have contacted me in the past regarding my photo gallery solutions for BlogEngine.NET so I intend to work on a solution that will work for BlogEngine.NET users.&amp;nbsp; Heck, maybe I&amp;#39;ll even have a little multi-part series on how to create your very own!
&lt;/p&gt;
&lt;p&gt;
Virtual environments are a hot topic at work right now as I have found everyone has a different solution to the &amp;quot;best&amp;quot; way to construct the optimal environment.&amp;nbsp; Different solutions implement one or a combination of several of the following:
&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;VPC&lt;/li&gt;
	&lt;li&gt;VMWare (in some cases desktop images are hosted on an ESX server)&lt;br /&gt;
	&lt;/li&gt;
	&lt;li&gt;RDP (Including custom RDP Software like&amp;nbsp; visionApp)&lt;/li&gt;
	&lt;li&gt;VPN/Citrix&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
I&amp;#39;m simply utilizing VPCs and a VPN client to access our corporate network, but I am open to hearing what solutions people find efficient to manage out there.&amp;nbsp; Feel free to leave it in a comment below or email me at &lt;a href="mailto:ddouglass@gmail.com"&gt;ddouglass@gmail.com&lt;/a&gt;.&amp;nbsp; Also, feel free to comment on some features you&amp;#39;d like to see me present on the albums like a lightbox implementation, for example.
&lt;/p&gt;
&lt;p&gt;
Cheers! 
&lt;/p&gt;

</description><link>http://dannydouglass.com/post/2008/05/13/Im-Still-Here-I-Swear.aspx</link><author>name.nospam@nospam.example.com (Danny)</author><comments>http://dannydouglass.com/post/2008/05/13/Im-Still-Here-I-Swear.aspx#comment</comments><guid>http://dannydouglass.com/post.aspx?id=1775afcc-8d9a-4a32-b32b-aec7046111ec</guid><pubDate>Tue, 13 May 2008 14:20:00 -0500</pubDate><category>ASP.NET</category><category>Blogging</category><category>My Exciting Life</category><dc:publisher>Danny</dc:publisher><pingback:server>http://dannydouglass.com/pingback.axd</pingback:server><pingback:target>http://dannydouglass.com/post.aspx?id=1775afcc-8d9a-4a32-b32b-aec7046111ec</pingback:target><slash:comments>22</slash:comments><trackback:ping>http://dannydouglass.com/trackback.axd?id=1775afcc-8d9a-4a32-b32b-aec7046111ec</trackback:ping><wfw:comment>http://dannydouglass.com/post/2008/05/13/Im-Still-Here-I-Swear.aspx#comment</wfw:comment><wfw:commentRss>http://dannydouglass.com/syndication.axd?post=1775afcc-8d9a-4a32-b32b-aec7046111ec</wfw:commentRss></item><item><title>Comparing Popular JavaScript/Ajax Frameworks</title><description>&lt;p&gt;After four days of &lt;a href="http://dannydouglass.com/post/2008/04/ASPNET-AJAX-Training-with-Stephen-Walther.aspx" target="_blank"&gt;ASP.NET AJAX training with Stephen Walther&lt;/a&gt; I set out to learn more about my options in choosing a solution for a JavaScript/Ajax framework.&amp;#160; If I realized days later I would be writing this comprehensive post on 7 of the &lt;a href="http://www.surveymonkey.com/sr.aspx?sm=fXLiKcnKlD6cO5bRe961aBB6NCCWytRyY3rParAYmwA_3d" target="_blank"&gt;most popular frameworks&lt;/a&gt;, I may have just went with the &amp;quot;Inny-Minny-Miney-Moe&amp;quot; method!&amp;#160;&amp;#160; I decided to share my research, analysis, links, resources, and personal grade for each of the frameworks compared - jQuery, YUI, Prototype, Dojo, MooTools, Ext JS, and Script.aculo.us.&amp;#160; I put together a comparison matrix to illustrate where many of the frameworks differ.&amp;#160; I did not spend a great deal of time comparing features side-by-side simply because most complete frameworks offer very similar functionality (perhaps another post? :P). &lt;/p&gt;  &lt;p&gt;&lt;a href="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/ComparingPopularJavaScriptFrameworks_94FF/JavaScriptFrameworkComparisonChart_4.png" target="_blank"&gt;&lt;img alt="JavaScript Framework Comparison Chart" src="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/ComparingPopularJavaScriptFrameworks_94FF/JavaScriptFrameworkComparisonChart_thumb_1.png" width="400" height="322" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;&lt;strong&gt;&amp;gt;&amp;gt; jQuery&lt;/strong&gt;&lt;/h4&gt;  &lt;p&gt;&lt;strong&gt;&lt;a href="http://jquery.com" target="_blank"&gt;&lt;img alt="jquery" src="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/ComparingPopularJavaScriptFrameworks_94FF/jquery_3.gif" width="231" height="85" /&gt;&lt;/a&gt;       &lt;br /&gt;&lt;/strong&gt;&lt;a href="http://jquery.com"&gt;http://jquery.com&lt;/a&gt;     &lt;br /&gt;&lt;strong&gt;Current Version&lt;/strong&gt;: 1.2.3     &lt;br /&gt;&lt;strong&gt;Download Size&lt;/strong&gt;: 94.5 KB     &lt;br /&gt;&lt;strong&gt;Grade&lt;/strong&gt;: 9/10 &lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;quot;jQuery is a fast, concise, JavaScript Library that simplifies how you traverse HTML documents, handle events, perform animations, and add Ajax interactions to your web pages. jQuery is designed to change the way that you write JavaScript.&amp;quot;&lt;/em&gt; &lt;/p&gt;  &lt;p&gt;jQuery's framework is based on the jQuery object that extends the DOM, as opposed to taking a class-oriented approach (provided using the&amp;#160; &lt;strong&gt;$&lt;/strong&gt; operator).&amp;#160; The &amp;quot;&lt;a href="http://docs.jquery.com/How_jQuery_Works#Chainability_.28The_Magic_of_jQuery.29" target="_blank"&gt;Magic of jQuery&lt;/a&gt;&amp;quot; stems for the chainability of method calls, much like C#.&amp;#160; Each method in this framework returns the base jQuery object, allowing you to access functionality in a chained fashion.&amp;#160; One particularly nice feature of jQuery is the ease by which Ajax calls can be made.&amp;#160; Examples of simple callbacks can be found at &lt;a title="http://docs.jquery.com/How_jQuery_Works#Callbacks_and_Functions" href="http://docs.jquery.com/How_jQuery_Works#Callbacks_and_Functions"&gt;http://docs.jquery.com/How_jQuery_Works#Callbacks_and_Functions&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;You will notice in the comparison chart provided in this post that jQuery is one of the only JavaScript frameworks built using an Official Plug-In Architecture that allows easy extension.&amp;#160; One reason I believe this is a strong framework choice is the &lt;a href="http://plugins.jquery.com/" target="_blank"&gt;myriad of extensions&lt;/a&gt; (framework, widgets, and UI controls) that are available through the jQuery community.&amp;#160; Their well-designed &lt;a href="http://docs.jquery.com/" target="_blank"&gt;API/documentation&lt;/a&gt; and &lt;a href="http://docs.jquery.com/Tutorials:Live_Examples_of_jQuery" target="_blank"&gt;live examples&lt;/a&gt; reflect the maturity of this framework.&amp;#160; A variety of &lt;a href="http://docs.jquery.com/Discussion" target="_blank"&gt;google groups&lt;/a&gt; are also in place of standard forums. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Highlighted Extensions/Controls/Widgets&lt;/strong&gt; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Ext JS - &lt;a href="http://extjs.com/"&gt;http://extjs.com/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;jQuery UI - &lt;a href="http://ui.jquery.com/"&gt;http://ui.jquery.com/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;JQunit - &lt;a href="http://code.google.com/p/jqunit/"&gt;http://code.google.com/p/jqunit/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;markItUp - &lt;a href="http://markitup.jaysalvat.com/home/"&gt;http://markitup.jaysalvat.com/home/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Flot Graphs - &lt;a href="http://code.google.com/p/flot/"&gt;http://code.google.com/p/flot/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Accessible Charts - &lt;a href="http://www.filamentgroup.com/lab/creating_accessible_charts_using_canvas_and_jquery/"&gt;http://www.filamentgroup.com/lab/creating_accessible_charts_using_canvas_and_jquery/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Accessible Slider - &lt;a href="http://www.filamentgroup.com/lab/developing_an_accessible_slider/"&gt;http://www.filamentgroup.com/lab/developing_an_accessible_slider/&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;h4&gt;&lt;strong&gt;     &lt;br /&gt;&amp;gt;&amp;gt; Yahoo! UI Library&lt;/strong&gt;&lt;/h4&gt;  &lt;p&gt;&lt;strong&gt;&lt;a href="http://developer.yahoo.com/yui/" target="_blank"&gt;&lt;img alt="yui" src="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/ComparingPopularJavaScriptFrameworks_94FF/yui_3.png" width="240" height="31" /&gt;&lt;/a&gt;       &lt;br /&gt;&lt;/strong&gt;&lt;a href="http://developer.yahoo.com/yui/"&gt;http://developer.yahoo.com/yui/&lt;/a&gt;     &lt;br /&gt;&lt;strong&gt;Current Version&lt;/strong&gt;: 2.5.1     &lt;br /&gt;&lt;strong&gt;Download Size&lt;/strong&gt;: 49.7 - ? KB     &lt;br /&gt;&lt;strong&gt;Grade&lt;/strong&gt;: 8.5/10 &lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;quot;The Yahoo! User Interface (YUI) Library is a set of utilities and controls, written in JavaScript, for building richly interactive web applications using techniques such as DOM scripting, DHTML and AJAX.&amp;quot;&lt;/em&gt; &lt;/p&gt;  &lt;p&gt;The Yahoo! UI Library is a very complete collection of controls, animations, and utilities, though it tends to be a little &amp;quot;heavier&amp;quot; than most of the frameworks.&amp;#160; All the controls are based on a few core scripts - Yahoo Global Object, DOM Collection, and Event Utility.&amp;#160; While the learning curve for the YUI Library is a little steeper than most frameworks, you only need to include the features you are utilizing.&amp;#160; This library is a stable, mature option with many advanced tools not commonly found in many lightweight frameworks such as a logging control, testing utilities, and browser profiling. &lt;/p&gt;  &lt;p&gt;The extensive &lt;a href="http://developer.yahoo.com/yui/docs/" target="_blank"&gt;documentation&lt;/a&gt; and &lt;a href="http://dannydouglass.com/admin/Pages/Highlighted%20Extensions/Controls/Widgets" target="_blank"&gt;live examples&lt;/a&gt; (complete with full code) depict the strength of the framework.&amp;#160; Yahoo groups are also available for troubleshooting and discussion topics.&amp;#160; Handy &lt;a href="http://developer.yahoo.com/yui/docs/assets/cheatsheets.zip" target="_blank"&gt;cheat sheets&lt;/a&gt; are also available for download to get you rolling with YUI. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Highlighted Extensions/Controls/Widgets&lt;/strong&gt; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;DED|Chain - &lt;a href="http://dedchain.dustindiaz.com/"&gt;http://dedchain.dustindiaz.com/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Ext JS - &lt;a href="http://extjs.com/"&gt;http://extjs.com/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Planet Yazaar - &lt;a href="http://www.yazaar.org/"&gt;http://www.yazaar.org/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Bubbling Library - &lt;a href="http://www.bubbling-library.com/"&gt;http://www.bubbling-library.com/&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;h4&gt;&lt;strong&gt;     &lt;br /&gt;&amp;gt;&amp;gt; Dojo Toolkit&lt;/strong&gt;&lt;/h4&gt;  &lt;p&gt;&lt;strong&gt;&lt;a href="http://dojotoolkit.org/" target="_blank"&gt;&lt;img alt="dojo" src="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/ComparingPopularJavaScriptFrameworks_94FF/dojo_3.png" width="240" height="82" /&gt;&lt;/a&gt;       &lt;br /&gt;&lt;/strong&gt;&lt;a href="http://dojotoolkit.org"&gt;http://dojotoolkit.org&lt;/a&gt;&amp;#160; &lt;br /&gt;&lt;strong&gt;Current Version&lt;/strong&gt;: 1.1     &lt;br /&gt;&lt;strong&gt;Download Size&lt;/strong&gt;: 75 - ? KB     &lt;br /&gt;&lt;strong&gt;Grade&lt;/strong&gt;: 7.5/10 &lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;quot;Dojo is an Open Source DHTML toolkit written in JavaScript. It builds on several contributed code bases (nWidgets, Burstlib, f(m)), which is why we refer to it sometimes as a &amp;quot;unified&amp;quot; toolkit. Dojo aims to solve some long-standing historical problems with DHTML which prevented mass adoption of dynamic web application development.&amp;quot;&lt;/em&gt; &lt;/p&gt;  &lt;p&gt;The Dojo Toolkit is a stand-alone solution that offers the comparable Ajax (including JSON support), Event, CSS, and animation features in the core implementation.&amp;#160; The flexibility of this framework allows the addition of several optional modules like support for unit testing, debugging, and much more.&amp;#160; It may not be as mature as jQuery or Prototype, but the Dojo toolkit is a powerful library.&amp;#160; Provided extension libraries &lt;a href="http://dojotoolkit.org/projects/dijit" target="_blank"&gt;Digit&lt;/a&gt; and &lt;a href="http://dojotoolkit.org/projects/dojox" target="_blank"&gt;DojoX&lt;/a&gt; offer many advanced controls and features for creating widgets, data display and manipulation, theming, and more. &lt;/p&gt;  &lt;p&gt;The &lt;a href="http://dojotoolkit.org/demos" target="_blank"&gt;demos&lt;/a&gt; on the official Dojo Toolkit site are disappointing.&amp;#160; Most useful demos exist on &lt;a href="http://dojotoolkit.org/key-links" target="_blank"&gt;external sites&lt;/a&gt; provided by project contributors, which is a bit of a deterrent.&amp;#160; The &lt;a href="http://api.dojotoolkit.org/" target="_blank"&gt;API&lt;/a&gt; could also use a little work to make it more complete.&amp;#160; It is good to note that this is one of the only solutions that offers professional training besides Ext JS. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Highlighted Extensions/Controls/Widgets&lt;/strong&gt; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;DojoX - &lt;a href="http://dojotoolkit.org/projects/dojox"&gt;http://dojotoolkit.org/projects/dojox&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Dijit - &lt;a href="http://dojotoolkit.org/projects/dijit"&gt;http://dojotoolkit.org/projects/dijit&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;h4&gt;&lt;strong&gt;     &lt;br /&gt;&amp;gt;&amp;gt; Prototype&lt;/strong&gt;&lt;/h4&gt;  &lt;p&gt;&lt;strong&gt;&lt;a href="http://prototypejs.org/" target="_blank"&gt;&lt;img alt="prototype" src="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/ComparingPopularJavaScriptFrameworks_94FF/prototype_3.png" width="169" height="82" /&gt;&lt;/a&gt;       &lt;br /&gt;&lt;/strong&gt;&lt;a href="http://prototypejs.org/"&gt;http://prototypejs.org/&lt;/a&gt;     &lt;br /&gt;&lt;strong&gt;Current Version&lt;/strong&gt;: 1.6.0.2     &lt;br /&gt;&lt;strong&gt;Download Size&lt;/strong&gt;: 124 KB     &lt;br /&gt;&lt;strong&gt;Grade&lt;/strong&gt;: 7/10 &lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;quot;Prototype is a JavaScript Framework that aims to ease development of dynamic web applications. Featuring a unique, easy-to-use toolkit for class-driven development and the nicest Ajax library around, Prototype is quickly becoming the codebase of choice for web application developers everywhere.&amp;quot;&lt;/em&gt; &lt;/p&gt;  &lt;p&gt;Prototype takes a class-oriented approach to extending the DOM and makes those extensions available in a variety of ways (&lt;strong&gt;$ &lt;/strong&gt;and &lt;strong&gt;$$&lt;/strong&gt; operators being the most common).&amp;#160; The library is very simple to use since it is conveniently modularized into separate class entities.&amp;#160; &lt;a href="http://prototypejs.org/learn/introduction-to-ajax" target="_blank"&gt;Ajax implementations&lt;/a&gt; are very straightforward and &lt;a href="http://prototypejs.org/learn/json" target="_blank"&gt;can support JSON formats&lt;/a&gt;.&amp;#160; A strong focus on extensibility via &lt;a href="http://prototypejs.org/learn/class-inheritance" target="_blank"&gt;subclassing and inheritance&lt;/a&gt; is the backbone of this framework's flexibility. &lt;/p&gt;  &lt;p&gt;My biggest gripes around this framework are the lack live examples and discussion avenues, as well as the lack of UI features without the inclusion of Script.aculo.us.&amp;#160; I could see handing out a grade of 7.5/8 had those aspects of the framework been stronger. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Highlighted Extensions/Controls/Widgets&lt;/strong&gt; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Script.aculo.us - &lt;a href="http://script.aculo.us/"&gt;http://script.aculo.us/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Scripteka - &lt;a href="http://scripteka.com/"&gt;http://scripteka.com/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Rico - &lt;a href="http://openrico.org/"&gt;http://openrico.org/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Archetype - &lt;a href="http://archetypejs.org/"&gt;http://archetypejs.org/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Prototype.Tidbits - &lt;a href="http://livepipe.net/projects/prototype_tidbits/"&gt;http://livepipe.net/projects/prototype_tidbits/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Control Suite - &lt;a href="http://livepipe.net/projects/control_suite/"&gt;http://livepipe.net/projects/control_suite/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Object.Event - &lt;a href="http://livepipe.net/projects/object_event/"&gt;http://livepipe.net/projects/object_event/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Event.Behavior - &lt;a href="http://livepipe.net/projects/event_behavior/"&gt;http://livepipe.net/projects/event_behavior/&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;h4&gt;&lt;strong&gt;     &lt;br /&gt;&amp;gt;&amp;gt; Ext JS&lt;/strong&gt;&lt;/h4&gt;  &lt;p&gt;&lt;strong&gt;&lt;a href="http://extjs.com" target="_blank"&gt;&lt;img alt="extjs" src="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/ComparingPopularJavaScriptFrameworks_94FF/extjs_3.png" width="240" height="33" /&gt;&lt;/a&gt;       &lt;br /&gt;&lt;/strong&gt;&lt;a href="http://extjs.com"&gt;http://extjs.com&lt;/a&gt;&amp;#160; &lt;br /&gt;&lt;strong&gt;Current Version&lt;/strong&gt;: 2.1     &lt;br /&gt;&lt;strong&gt;Download Size&lt;/strong&gt;: 510 KB     &lt;br /&gt;&lt;strong&gt;Grade&lt;/strong&gt;: 8.5/10 &lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;quot;Ext JS is a cross-browser JavaScript library for building rich internet applications that includes high performance and customizable UI widgets, a well designed and extensible Component model, and an intuitive, easy to use API.&amp;quot;&lt;/em&gt; &lt;/p&gt;  &lt;p&gt;Those familiar with the Yahoo! UI Library will recognize Ext JS as it was previously an extension framework solely for YUI, however it now support jQuery, Prototype, and it's own library as the base component.&amp;#160; Ext JS is a relatively new, and impressive, option in the JavaScript framework realm.&amp;#160; Their website recently underwent a dramatic renovation and offers a really well-designed &lt;a href="http://extjs.com/deploy/dev/examples/samples.html" target="_blank"&gt;set of samples&lt;/a&gt;, but falls short with it's web-based code samples.&amp;#160; All sample code will need to be downloaded - a minor inconvenience. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.coolite.com/" target="_blank"&gt;Coolite Studio&lt;/a&gt; recently announced a collection of &lt;a href="http://www.coolite.com/examples/" target="_blank"&gt;ASP.NET controls&lt;/a&gt; based on Ext JS that are definitely worth a few minutes of your time.&amp;#160; I also really like that their &lt;a href="http://extjs.com/deploy/dev/docs/" target="_blank"&gt;online API&lt;/a&gt; is built using their framework - neat! &lt;/p&gt;  &lt;h4&gt;&lt;strong&gt;     &lt;br /&gt;&amp;gt;&amp;gt; MooTools&lt;/strong&gt;&lt;/h4&gt;  &lt;p&gt;&lt;strong&gt;&lt;a href="http://mootools.net/" target="_blank"&gt;&lt;img alt="mootools" src="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/ComparingPopularJavaScriptFrameworks_94FF/mootools_3.png" width="223" height="82" /&gt;&lt;/a&gt;       &lt;br /&gt;&lt;/strong&gt;&lt;a href="http://mootools.net"&gt;http://mootools.net&lt;/a&gt;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&lt;strong&gt;Current Version&lt;/strong&gt;: 1.1     &lt;br /&gt;&lt;strong&gt;Download Size&lt;/strong&gt;: 9 - ? KB     &lt;br /&gt;&lt;strong&gt;Grade&lt;/strong&gt;: 6.5/10 &lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;quot;MooTools is a compact, modular, Object-Oriented JavaScript framework designed for the intermediate to advanced JavaScript developer. It allows you to write powerful, flexible, and cross-browser code with its elegant, well documented, and coherent API.&amp;quot;&lt;/em&gt; &lt;/p&gt;  &lt;p&gt;MooTools is another recent addition to this rapidly growing space.&amp;#160; The framework takes a class-oriented approach that is similar to Prototype's structure.&amp;#160; It is one of the more lightweight options out there.&amp;#160; In fact, the most basic implementation boasts a measly 9KB script.&amp;#160; However, you will be sacrificing certain features that most (if not all) libraries offer out-of-the-box (e.g. form validation).&amp;#160; Like the other libaries discussed in the post, Ajax is a supported feature.&amp;#160; The implementation is a bit different than other frameworks, but it still seems easy enough to use (especially for the ASP.NET developers out there).&amp;#160; There are &lt;a href="http://forum.mootools.net/" target="_blank"&gt;active forums&lt;/a&gt; available on MooTools' website.&amp;#160; I like what I see with this framework, but I think it will really benefit from a little more time to mature into a more powerful library. &lt;/p&gt;  &lt;h4&gt;&lt;strong&gt;     &lt;br /&gt;&amp;gt;&amp;gt; Script.aculo.us&lt;/strong&gt;&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://script.aculo.us/" target="_blank"&gt;&lt;img alt="scriptaculous" src="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/ComparingPopularJavaScriptFrameworks_94FF/scriptaculous_3.png" width="240" height="62" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;a href="http://script.aculo.us"&gt;http://script.aculo.us&lt;/a&gt;     &lt;br /&gt;&lt;strong&gt;Current Version&lt;/strong&gt;: 1.8.1     &lt;br /&gt;&lt;strong&gt;Download Size&lt;/strong&gt;: 262 KB     &lt;br /&gt;&lt;strong&gt;Grade&lt;/strong&gt;: 7.5/10 &lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;quot;Script.aculo.us provides you with easy-to-use, cross-browser user interface JavaScript libraries to make your web sites and web applications fly.&amp;quot;&lt;/em&gt; &lt;/p&gt;  &lt;p&gt;This library is an extension to the Prototype framework aimed at offering the UI elements Prototype ignores.&amp;#160; Script.aculo.us focuses on offering &lt;a href="http://wiki.script.aculo.us/scriptaculous/show/CoreEffects" target="_blank"&gt;six core UI effects&lt;/a&gt; - highlight, morph, move, opacity, parallel, and scale.&amp;#160; More advanced UI effects can be accomplished, however they require the use of &lt;a href="http://wiki.script.aculo.us/scriptaculous/show/CombinationEffects" target="_blank"&gt;combination effects&lt;/a&gt;.&amp;#160; There are a set of &lt;a href="http://wiki.script.aculo.us/scriptaculous/tags/controls" target="_blank"&gt;15 controls&lt;/a&gt; available out of the box with Script.aculo.us (e.g. Ajax AutoComplete and Drag &amp;amp; Drop).&amp;#160; &lt;/p&gt;  &lt;p&gt;If you are strictly focused on UI effects this is a great solution.&amp;#160; It offers a powerful set of UI tools, but I am a little weary that the project is run by one developer.&amp;#160; It is hard to argue against this solution when you look at the &lt;a href="http://wiki.script.aculo.us/scriptaculous/show/RealWorldUsage" target="_blank"&gt;real world usage&lt;/a&gt; though. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;     &lt;br /&gt;Conclusion&lt;/strong&gt;     &lt;br /&gt;There are a several great options when choosing a JavaScript framework for your company/project.&amp;#160; My personal choice would be jQuery as my base library, and the optional use of Ext JS as an extension.&amp;#160; Prototype + Script.aculo.us is another very popular solution, but as I mentioned I like the stability offered by jQuery and Ext JS.&amp;#160; Your choice will really depend on the features and functionality you require.&amp;#160; Hopefully this comparison helps in making the decision easier by promoting the strengths and weaknesses of the different libraries.&amp;#160; &lt;/p&gt;  &lt;p&gt;What do you use in your applications, and, more importantly, would you recommend it? &lt;/p&gt;  &lt;p&gt;(For anyone that wants to use the analysis for corporate justification, I will be providing a word document in the next day or so that wraps up this post in a nicely formatted fashion) &lt;/p&gt; </description><link>http://dannydouglass.com/post/2008/04/21/Comparing-Popular-JavaScript-Frameworks.aspx</link><author>name.nospam@nospam.example.com (Danny)</author><comments>http://dannydouglass.com/post/2008/04/21/Comparing-Popular-JavaScript-Frameworks.aspx#comment</comments><guid>http://dannydouglass.com/post.aspx?id=128e6203-cfa8-4a64-85cb-413b33290637</guid><pubDate>Mon, 21 Apr 2008 18:20:00 -0500</pubDate><category>ASP.NET</category><category>Dev. Tips &amp; Tools</category><category>Reviews</category><category>Ajax</category><dc:publisher>Danny</dc:publisher><pingback:server>http://dannydouglass.com/pingback.axd</pingback:server><pingback:target>http://dannydouglass.com/post.aspx?id=128e6203-cfa8-4a64-85cb-413b33290637</pingback:target><slash:comments>243</slash:comments><trackback:ping>http://dannydouglass.com/trackback.axd?id=128e6203-cfa8-4a64-85cb-413b33290637</trackback:ping><wfw:comment>http://dannydouglass.com/post/2008/04/21/Comparing-Popular-JavaScript-Frameworks.aspx#comment</wfw:comment><wfw:commentRss>http://dannydouglass.com/syndication.axd?post=128e6203-cfa8-4a64-85cb-413b33290637</wfw:commentRss></item><item><title>BlogEngine.NET - Serious Security Issue!</title><description>&lt;p&gt;A fellow BlogEngine.NET user (who's name I do not know unfortunately) alerted me to an issue on my website where you could retrieve my site's user credentials by accessing the JavaScript HttpHandler via a browser and requesting my users.xml file as seen in the following screenshot.&amp;#160; Now I would not label myself as a &amp;quot;security expert&amp;quot; by any means, but I think this issue falls under the &lt;strong&gt;Crazy Bad&lt;/strong&gt; category.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/Blo.NETtheJavaScriptHttpHandlerSeriousSe_12D74/ResponseScreenshot_4.jpg"&gt;&lt;img alt="Response Screenshot" src="http://dannydouglass.com/image.axd?picture=WindowsLiveWriter/Blo.NETtheJavaScriptHttpHandlerSeriousSe_12D74/ResponseScreenshot_thumb_1.jpg" width="400" height="213" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I took a look at the code in the BlogEngine.Core project and found out that the issue is with the &lt;strong&gt;RetrieveLocalScript()&lt;/strong&gt; method.&amp;#160; Here's the code from BlogEngine.NET Version 1.3:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;div class="csharpcode-wrapper"&gt;   &lt;div class="csharpcode"&gt;     &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:&lt;/span&gt; &lt;span class="rem"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;   2:&lt;/span&gt; &lt;span class="rem"&gt;/// Retrieves the local script from the disk&lt;/span&gt;&lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:&lt;/span&gt; &lt;span class="rem"&gt;/// &amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;   4:&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;string&lt;/span&gt; RetrieveLocalScript(&lt;span class="kwrd"&gt;string&lt;/span&gt; file)&lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:&lt;/span&gt; {&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;   6:&lt;/span&gt;     &lt;span class="kwrd"&gt;string&lt;/span&gt; path = HttpContext.Current.Server.MapPath(file);&lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:&lt;/span&gt;     &lt;span class="kwrd"&gt;string&lt;/span&gt; script = &lt;span class="kwrd"&gt;null&lt;/span&gt;;&lt;/pre&gt;

    &lt;pre class="alteven"&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;using&lt;/span&gt; (StreamReader reader = &lt;span class="kwrd"&gt;new&lt;/span&gt; StreamReader(path))&lt;/pre&gt;

    &lt;pre class="alteven"&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;         script = reader.ReadToEnd();&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;  12:&lt;/span&gt;         HttpContext.Current.Cache.Insert(file, script, &lt;span class="kwrd"&gt;new&lt;/span&gt; CacheDependency(path));&lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  13:&lt;/span&gt;     }&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;  14:&lt;/span&gt;&amp;#160; &lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  15:&lt;/span&gt;     &lt;span class="kwrd"&gt;return&lt;/span&gt; script;&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;  16:&lt;/span&gt; }&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;After adding a temporarily fix to not allow my user credentials to be served to the browser (I know - I am a stickler), I decided to do a little research. I attempted to access Mads Kristensens blog's users.xml file (in no way to be malicious) to see if his website handled this issue.&amp;#160; Sure enough, I received a &amp;quot;no access&amp;quot; security exception - see that error &lt;a href="http://blog.madskristensen.dk/js.axd?path=/app_data/users.xml" target="_blank"&gt;here&lt;/a&gt;.&amp;#160; If you follow &lt;a title="Mads Kristensen" href="http://blog.madskristensen.dk/" target="_blank"&gt;Mads' blog&lt;/a&gt; you would also know that he is &lt;a href="http://blog.madskristensen.dk/post/Twitter-widget-example.aspx" target="_blank"&gt;running the latest beta code of BlogEngine.NET&lt;/a&gt;.&amp;#160; I decided to search around in the BlogEngine.NET CodePlex project site for a discussion/fix and what I found is that the JavaScriptHandler.cs file received a bug fix today at 9:30am (1.3.029) - check it out &lt;a title="Bug Fix" href="http://www.codeplex.com/blogengine/SourceControl/ListDownloadableCommits.aspx" target="_blank"&gt;here&lt;/a&gt;.&amp;#160; Below is the &lt;strong&gt;fixed RetrieveLocalScript() &lt;/strong&gt;method.&amp;#160; You will notice that only JavaScript files are served now in lines 6-9.&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;div class="csharpcode-wrapper"&gt;
  &lt;div class="csharpcode"&gt;
    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:&lt;/span&gt; &lt;span class="rem"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;   2:&lt;/span&gt; &lt;span class="rem"&gt;/// Retrieves the local script from the disk&lt;/span&gt;&lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:&lt;/span&gt; &lt;span class="rem"&gt;/// &amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;   4:&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;string&lt;/span&gt; RetrieveLocalScript(&lt;span class="kwrd"&gt;string&lt;/span&gt; file)&lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:&lt;/span&gt; {&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;   6:&lt;/span&gt;     &lt;span class="kwrd"&gt;if&lt;/span&gt;( !file.EndsWith( &lt;span class="str"&gt;&amp;quot;.js&amp;quot;&lt;/span&gt;, StringComparison.OrdinalIgnoreCase ) )&lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:&lt;/span&gt;     {&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;   8:&lt;/span&gt;         &lt;span class="kwrd"&gt;throw&lt;/span&gt; &lt;span class="kwrd"&gt;new&lt;/span&gt; System.Security.SecurityException( &lt;span class="str"&gt;&amp;quot;No access&amp;quot;&lt;/span&gt; );&lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:&lt;/span&gt;     }&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;  10:&lt;/span&gt;&amp;#160; &lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  11:&lt;/span&gt;     &lt;span class="kwrd"&gt;string&lt;/span&gt; path = HttpContext.Current.Server.MapPath(file);&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;  12:&lt;/span&gt;     &lt;span class="kwrd"&gt;string&lt;/span&gt; script = &lt;span class="kwrd"&gt;null&lt;/span&gt;;&lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  13:&lt;/span&gt;     &lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;  14:&lt;/span&gt;     &lt;span class="kwrd"&gt;using&lt;/span&gt; (StreamReader reader = &lt;span class="kwrd"&gt;new&lt;/span&gt; StreamReader(path))&lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  15:&lt;/span&gt;     {&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;  16:&lt;/span&gt;         script = reader.ReadToEnd();&lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  17:&lt;/span&gt;         HttpContext.Current.Cache.Insert(file, script, &lt;span class="kwrd"&gt;new&lt;/span&gt; CacheDependency(path));&lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;  18:&lt;/span&gt;     }&lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  19:&lt;/span&gt;&amp;#160; &lt;/pre&gt;

    &lt;pre class="alteven"&gt;&lt;span class="lnum"&gt;  20:&lt;/span&gt;     &lt;span class="kwrd"&gt;return&lt;/span&gt; script;&lt;/pre&gt;

    &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  21:&lt;/span&gt; }&lt;/pre&gt;

    &lt;pre class="alt"&gt;&amp;#160;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;Well I would say that is a fairly simple fix for users that have downloaded the full-source code edition of BlogEngine.NET.&amp;#160; &lt;strong&gt;What about the users that do not have access to their BlogEngine.Core project&lt;/strong&gt;?!&amp;#160; I am glad you asked!&amp;#160; I'm offering a clean version (no other changes except this bug fix from version 1.3) of the BlogEngine.Core DLL.&amp;#160; Troy Goode is utilizing this DLL on his live site over at &lt;a href="http://squaredroot.com"&gt;http://squaredroot.com&lt;/a&gt; in case you would like to see it in action first!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Update&lt;/strong&gt;: The patched downloads are available over at BlogEngine.NET - &lt;a title="http://dotnetblogengine.net/post/Critical-Security-Patch-Available.aspx" href="http://dotnetblogengine.net/post/Critical-Security-Patch-Available.aspx"&gt;http://dotnetblogengine.net/post/Critical-Security-Patch-Available.aspx&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Hope that helps!&lt;/p&gt;
</description><link>http://dannydouglass.com/post/2008/04/13/BlogEngine-and-the-JavaScript-HttpHandler-Serious-Security-Issue.aspx</link><author>name.nospam@nospam.example.com (Danny)</author><comments>http://dannydouglass.com/post/2008/04/13/BlogEngine-and-the-JavaScript-HttpHandler-Serious-Security-Issue.aspx#comment</comments><guid>http://dannydouglass.com/post.aspx?id=7d390c26-c66d-4345-ab97-190feb9cbc78</guid><pubDate>Sun, 13 Apr 2008 22:25:52 -0500</pubDate><category>ASP.NET</category><category>Blogging</category><dc:publisher>Danny</dc:publisher><pingback:server>http://dannydouglass.com/pingback.axd</pingback:server><pingback:target>http://dannydouglass.com/post.aspx?id=7d390c26-c66d-4345-ab97-190feb9cbc78</pingback:target><slash:comments>312</slash:comments><trackback:ping>http://dannydouglass.com/trackback.axd?id=7d390c26-c66d-4345-ab97-190feb9cbc78</trackback:ping><wfw:comment>http://dannydouglass.com/post/2008/04/13/BlogEngine-and-the-JavaScript-HttpHandler-Serious-Security-Issue.aspx#comment</wfw:comment><wfw:commentRss>http://dannydouglass.com/syndication.axd?post=7d390c26-c66d-4345-ab97-190feb9cbc78</wfw:commentRss></item><item><title>Review: ASP.NET AJAX Training with Stephen Walther</title><description>&lt;p&gt;
I spent last week in an interactive workshop focused on ASP.NET AJAX and MVC with &lt;a href="http://weblogs.asp.net/stephenwalther/default.aspx" target="_blank" title="Stephen Walther's Blog"&gt;Stephen Walther&lt;/a&gt; from &lt;a href="http://www.superexpert.com/" target="_blank" title="Superexpert Training"&gt;Superexpert Training&lt;/a&gt;, and came out of the class very happy with both the material and the instructor.&amp;nbsp; Stephen took the time to offer a customized training agenda that met specific business needs at my &lt;a href="http://nreca.org" target="_blank"&gt;current company&lt;/a&gt;.&amp;nbsp; His practical examples and personalized training approach really made for a great experience.&amp;nbsp; 
&lt;/p&gt;
&lt;p&gt;
AJAX is a long-running interest of mine dating back to Michael Schwartz&amp;#39;s &lt;a href="http://ajax.schwarz-interactive.de/CSharpSample/" target="_blank" title="Ajax.NET framework"&gt;Ajax.NET framework&lt;/a&gt; (circa 2005).&amp;nbsp; I have dabbled in testing out a variety of Ajax frameworks (hint for my next post), but never spent a significant amount of time learning the principles behind the architecture.&amp;nbsp; Learning the details around client-side and server-side approaches to implementing Ajax was particularly intriguing.&amp;nbsp; I even learned how to build my very own client-side ASP.NET AJAX controls! Neat!!
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://SquaredRoot.com" target="_blank" title="Troy Goode | SquaredRoot.com"&gt;Troy Goode&lt;/a&gt; posted a more &lt;a href="http://www.squaredroot.com/post/2008/04/Training-with-Stephen-Walther.aspx" target="_blank" title="Review: ASP.NET AJAX Training with Stephen Walther"&gt;detailed review&lt;/a&gt; if you would like to read more about the class.&amp;nbsp; Looking for a good ASP.NET 3.5 resource?&amp;nbsp; Check out Stephen Walther&amp;#39;s book (see link below).&amp;nbsp; I just started reading through it, but its a great read so far!
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://www.amazon.com/ASP-NET-3-5-Unleashed-Stephen-Walther/dp/0672330113/ref=pd_bbs_sr_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1207570100&amp;amp;sr=8-1" title="http://www.amazon.com/ASP-NET-3-5-Unleashed-Stephen-Walther/dp/0672330113/ref=pd_bbs_sr_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1207570100&amp;amp;sr=8-1"&gt;http://www.amazon.com/ASP-NET-3-5-Unleashed-Stephen-Walther/dp/0672330113/ref=pd_bbs_sr_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1207570100&amp;amp;sr=8-1&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Disclaimer&lt;/strong&gt;: &lt;strong&gt;I was not paid or compensated in any way for writing this post.&amp;nbsp; I just enjoyed the training &lt;em&gt;that much! &lt;/em&gt;=]&lt;/strong&gt;
&lt;/p&gt;

</description><link>http://dannydouglass.com/post/2008/04/07/ASPNET-AJAX-Training-with-Stephen-Walther.aspx</link><author>name.nospam@nospam.example.com (Danny)</author><comments>http://dannydouglass.com/post/2008/04/07/ASPNET-AJAX-Training-with-Stephen-Walther.aspx#comment</comments><guid>http://dannydouglass.com/post.aspx?id=677a727f-703f-4ab1-82f4-ffe4955ddf1a</guid><pubDate>Mon, 07 Apr 2008 08:11:00 -0500</pubDate><category>ASP.NET</category><category>Reviews</category><category>Ajax</category><dc:publisher>Danny</dc:publisher><pingback:server>http://dannydouglass.com/pingback.axd</pingback:server><pingback:target>http://dannydouglass.com/post.aspx?id=677a727f-703f-4ab1-82f4-ffe4955ddf1a</pingback:target><slash:comments>89</slash:comments><trackback:ping>http://dannydouglass.com/trackback.axd?id=677a727f-703f-4ab1-82f4-ffe4955ddf1a</trackback:ping><wfw:comment>http://dannydouglass.com/post/2008/04/07/ASPNET-AJAX-Training-with-Stephen-Walther.aspx#comment</wfw:comment><wfw:commentRss>http://dannydouglass.com/syndication.axd?post=677a727f-703f-4ab1-82f4-ffe4955ddf1a</wfw:commentRss></item></channel>
</rss>
