<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://dnfug.com/Web/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">Raheel Hussain</title><subtitle type="html">Writting My experiences On &lt;br /&gt;.NET &amp;amp; Web Development</subtitle><id>http://dnfug.com/Web/blogs/raheel/atom.aspx</id><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/default.aspx" /><link rel="self" type="application/atom+xml" href="http://dnfug.com/Web/blogs/raheel/atom.aspx" /><generator uri="http://communityserver.org" version="3.0.20611.960">Community Server</generator><updated>2007-10-15T17:03:00Z</updated><entry><title>Browser's Refresh Problem &amp; the .NET Solve</title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2008/02/17/browser-s-refresh-problem-amp-the-net-solve.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2008/02/17/browser-s-refresh-problem-amp-the-net-solve.aspx</id><published>2008-02-17T17:43:00Z</published><updated>2008-02-17T17:43:00Z</updated><content type="html">&lt;p&gt;A couple of years back, I faced a problem in while doing a web project, that was regarding the browser&amp;#39;s refresh. &lt;br /&gt;&lt;br /&gt;Although, I managed to solve it&amp;nbsp;as problems are meant to be solved, but that time I was not a blogger. &lt;br /&gt;&lt;br /&gt;At the time of writting this post, the time is 21:53 17-Feb-08 and I&amp;#39;m sitting late in my office working on a project and then during my work, it happened to occur again.&lt;br /&gt;&lt;br /&gt;The idea was simple and straight forward &lt;br /&gt;&lt;br /&gt;Suppose you&amp;#39;ve a button on your web page, with some code behind, when the button was clicked, it performed some operation (i.e. the code behind&amp;nbsp;gets executed), &lt;br /&gt;now when you press refresh on your web page ( F5 or Ctrl+R), the same code gets executed twice while it shouldn&amp;#39;t.&lt;br /&gt;&lt;br /&gt;So the&amp;nbsp;solution to this was to capture the the browser&amp;#39;s refresh. Following is an interesting post, and hope you&amp;#39;ll find it useful.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://joel.net/code/refresh_capture.aspx"&gt;http://joel.net/code/refresh_capture.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Regards - &lt;/p&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=180" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author></entry><entry><title>I'm 15 days old now MashaAllah</title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2008/02/11/i-m-15-days-old-now-mashaallah.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2008/02/11/i-m-15-days-old-now-mashaallah.aspx</id><published>2008-02-11T06:13:00Z</published><updated>2008-02-11T06:13:00Z</updated><content type="html">&lt;p&gt;&lt;a href="http://dnfug.com/Web/blogs/raheel/blog_announce.gif"&gt;&lt;img src="http://dnfug.com/Web/blogs/raheel/blog_announce.gif" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=162" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author></entry><entry><title>Blog By My Newborn Daughter</title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2008/01/27/blog-by-my-daughter.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2008/01/27/blog-by-my-daughter.aspx</id><published>2008-01-27T10:25:00Z</published><updated>2008-01-27T10:25:00Z</updated><content type="html">&lt;p&gt;&lt;a href="http://dnfug.com/Web/blogs/raheel/blog_invite.gif"&gt;&lt;img src="http://dnfug.com/Web/blogs/raheel/blog_invite.gif" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=151" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author></entry><entry><title>.NET Framework Library Source Code Released</title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2008/01/17/net-framework-library-source-code-released.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2008/01/17/net-framework-library-source-code-released.aspx</id><published>2008-01-17T05:32:00Z</published><updated>2008-01-17T05:32:00Z</updated><content type="html">&lt;p&gt;Guys ....... Check this out &lt;br /&gt;&lt;br /&gt;Written by Shawn Burke of Microsoft...&lt;/p&gt;
&lt;p&gt;It&amp;#39;s finally here - the launch of the .NET Reference Source project.&amp;nbsp; This post (hopefully!) contains everything you need to know.&amp;nbsp; Over the past few weeks, we ran a pilot of this feature and collected lots of great data that helped us work through some issues and understand where people were likely to have problems.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;Please carry on with he following link &lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/sburke/archive/2008/01/16/configuring-visual-studio-to-debug-net-framework-source-code.aspx"&gt;http://blogs.msdn.com/sburke/archive/2008/01/16/configuring-visual-studio-to-debug-net-framework-source-code.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;More on Scott&amp;#39;s Blog&lt;br /&gt;&lt;br /&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2008/01/16/net-framework-library-source-code-now-available.aspx"&gt;http://weblogs.asp.net/scottgu/archive/2008/01/16/net-framework-library-source-code-now-available.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And Scott Hanselman&amp;#39;s ComputerZen.com&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hanselman.com/blog/NETFrameworkLibrarySourceCodeAvailableForViewing.aspx"&gt;http://www.hanselman.com/blog/NETFrameworkLibrarySourceCodeAvailableForViewing.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Regards &lt;/p&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=149" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author><category term=".NET Framework" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/.NET+Framework/default.aspx" /></entry><entry><title>ASP.NET with Google Checkout - Part 1</title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2008/01/15/asp-net-with-google-checkout.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2008/01/15/asp-net-with-google-checkout.aspx</id><published>2008-01-15T05:45:00Z</published><updated>2008-01-15T05:45:00Z</updated><content type="html">&lt;p&gt;Google Checkout is a fast and easy&amp;nbsp;solution for online Buyers and Sellers, and getting popular vert fast.&lt;br /&gt;&lt;br /&gt;Recently, I had a chance to integrate the google checkout with one of&amp;nbsp;a website I developped.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The site&amp;nbsp;is already integrated with the&amp;nbsp;Local Mashreq Bank Merchant Account of UAE, for local UAE sales. &lt;/p&gt;
&lt;p&gt;The sales for the international customers however, became a bit issue because of conversion from EURO/GBP/USD$ wasn&amp;#39;t the good option at&amp;nbsp;all and caused a drop in sales.&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;This led them to think of a solution which would encompass both local as well as international market sales. It was fun as well as a good exposure for me. &lt;br /&gt;&lt;br /&gt;You can Visit : &lt;a href="http://www.1boxoffice.com/"&gt;http://www.1boxoffice.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I thought to state down what i&amp;#39;ve experienced and learnt&amp;nbsp;with it, to help out other developers going to do the same in future. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;How Google Checkout Works&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Google checkout has&amp;nbsp;following different distinct ways of integration&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;div&gt;Third-party e-Commerce Provider -&amp;nbsp;i.e. 3rd Party Shopping Carts&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;A Simple HTML code for Non-eCommers Plateforms&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Google Supported e-Commerce Providers&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Customized e-Commerce Plateform i.e. Microsoft Commerce Server, IBM Websphere, (&lt;em&gt;or may be your own custom made Shopping cart)&lt;/em&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Sending Invoices through Email.&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;
&lt;p&gt;&lt;br /&gt;I&amp;#39;m&amp;nbsp;not going to cover all the options, since the site I did best fits with option #4, which is &lt;u&gt;&lt;strong&gt;&lt;em&gt;A Customized e-Commerce Plateform.&lt;/em&gt;&lt;/strong&gt;&lt;/u&gt; &lt;br /&gt;I Shoping Cart on the site was custom developped by me.&lt;/p&gt;
&lt;p&gt;Under this option, Google provides two different set of APIs&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;Google Checkout&amp;nbsp;HTML API&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Google Checkout XML Developer API &lt;br /&gt;with Order Processing, Order Notification, and Merchant Calculation&amp;nbsp;separate APIs respectively&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Since, I had to implement the Order Processing as well as the Order notifications, I chose Option-Two the XML API method.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note: &lt;/strong&gt;&lt;br /&gt;The HTML way is even simpler, as this method includes the form hidden variables which are to be posted to the Google Payment Server view the Form Post method. The HTML API is limitted in a way that this is only a one-way integration with Google Checkout system, while comparing with the XML API, it provides a veriety of different tracking and integration options ... discussed below. &lt;br /&gt;&lt;br /&gt;You can findout details from the following URL : &lt;br /&gt;&lt;a href="http://code.google.com/apis/checkout/developer/google_checkout_html_api.html"&gt;http://code.google.com/apis/checkout/developer/google_checkout_html_api.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Google Checkout XML Developer API&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;The Google checkout API consist of the following&amp;nbsp;separate sets of APIs.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;Checkout API&lt;/strong&gt; - You can send the Shopping Cart Details to the Google System, additionally you can send discounts, VAT, Shipping Charges etc.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;Merchant Calculation API&lt;/strong&gt; - This means that you provide your order calculation rules to Google for the order,&amp;nbsp;and to implement this API, you must create a web service that calculates these values.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;Notification API&lt;/strong&gt; - By implementing this, your system (website admin) will get notified with, Payment approved/disapproved, order processed/shipped and the customer information such as billing telephone, address etc.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;Order Processing API&lt;/strong&gt; - lets you integrate Google Checkout with your internal order processing systems by allowing those systems to automatically send updated order information to Google.&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Further details could be foundout through the following URL.&lt;br /&gt;&lt;a href="http://code.google.com/apis/checkout/developer/index.html"&gt;http://code.google.com/apis/checkout/developer/index.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note: &lt;br /&gt;&lt;/strong&gt;When you sign up for a Google Merchant Account, you are given two options for either signing up for a &lt;strong&gt;&lt;em&gt;&lt;u&gt;Sandbox Account&lt;/u&gt; , &lt;/em&gt;&lt;/strong&gt;which is basically a &lt;u&gt;&lt;strong&gt;&lt;em&gt;Test Account&lt;/em&gt;&lt;/strong&gt;&lt;/u&gt;, and allows you to experiment your code in the &lt;em&gt;&lt;u&gt;&lt;strong&gt;Test Environment&lt;/strong&gt;&lt;/u&gt;&lt;/em&gt;, as well as the &lt;em&gt;&lt;u&gt;&lt;strong&gt;Production Account&lt;/strong&gt;&lt;/u&gt;&lt;/em&gt;, which you&amp;#39;ll have after you go Live with Google Checkout.&lt;/p&gt;
&lt;p&gt;Hope that this information was good enough to give a quick general overview Google Checkout API.&lt;/p&gt;
&lt;p&gt;My next post, I&amp;#39;m going to write about the steps which you&amp;#39;ve to perform to enable google Checkout in your application. &lt;/p&gt;
&lt;p&gt;Happy Coding ........................&lt;/p&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=148" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author><category term="ASP.NET" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/ASP.NET/default.aspx" /><category term="Google Checkout" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/Google+Checkout/default.aspx" /></entry><entry><title>Great Website, Must check this out ! </title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2008/01/09/asp-net-great-website-must-check-this-out.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2008/01/09/asp-net-great-website-must-check-this-out.aspx</id><published>2008-01-09T23:10:00Z</published><updated>2008-01-09T23:10:00Z</updated><content type="html">&lt;p&gt;Hi Folks ! &lt;br /&gt;&lt;br /&gt;Checkout this great website designed by Omer Al Zabir sometime back. &lt;br /&gt;Omer Al Zabir is from Bangladesh, and he is Microsoft MVP and MCAD, MCSD Certified. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Initially posted by&amp;nbsp;&lt;u&gt;&lt;em&gt;Joe Stagner&lt;/em&gt;&lt;/u&gt; of Microsoft, on his Blog, as well as this appeared in ASP.NET home page excerpts... &lt;br /&gt;Below is what he had to say. &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Joe Stagner&lt;/u&gt;&lt;/strong&gt;: &lt;br /&gt;&lt;br /&gt;I came across Omar Al Zabir&amp;#39;s website which he built several years ago. &lt;/p&gt;
&lt;p&gt;It&amp;#39;s a Windows 2000 UI in the browser. &lt;/p&gt;
&lt;p&gt;As we extend our web applications with AJAX, Silverlight, etc. I found this a great reminder of how far you can go with HTML &amp;amp; JavaScript when we really wrap our heads around them and exercise some creativity. &lt;/p&gt;
&lt;p&gt;Cool work Omar !&lt;/p&gt;
&lt;p&gt;&lt;a title="http://omar.mvps.org/" href="http://omar.mvps.org/"&gt;http://omar.mvps.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cheers ! &lt;/p&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=147" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author><category term="HTML" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/HTML/default.aspx" /><category term="JavaScript" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/JavaScript/default.aspx" /><category term="DHTML" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/DHTML/default.aspx" /></entry><entry><title>HttpCompression with ASP.NET </title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2008/01/07/httpcompression-on-your-asp-net-pages.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2008/01/07/httpcompression-on-your-asp-net-pages.aspx</id><published>2008-01-07T12:27:00Z</published><updated>2008-01-07T12:27:00Z</updated><content type="html">&lt;p&gt;Hi, &lt;/p&gt;
&lt;p&gt;I came accross&amp;nbsp;a very good article and have already implemented it in couple of my projects in the company.&lt;br /&gt;As I was working on reducing the size of&amp;nbsp;ASP.NET page, thought this is really worth sharing.&lt;br /&gt;&lt;br /&gt;Regards - raheel &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.codeproject.com/KB/aspnet/HttpCompressionQnD.aspx"&gt;http://www.codeproject.com/KB/aspnet/HttpCompressionQnD.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=143" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author><category term="ASP.NET" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/ASP.NET/default.aspx" /><category term="HTTP Compression" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/HTTP+Compression/default.aspx" /></entry><entry><title>Working with AJAX - Part 2 - Speed &amp; Page Size</title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2008/01/03/working-with-ajax-part-2-speed-vs-page-size.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2008/01/03/working-with-ajax-part-2-speed-vs-page-size.aspx</id><published>2008-01-03T07:22:00Z</published><updated>2008-01-03T07:22:00Z</updated><content type="html">&lt;p&gt;The Purpose of the AJAX (as also discussed&amp;nbsp;by many writters and many websites) is to improve the user experience, as well as&amp;nbsp;client centric&amp;nbsp;operations and development. Instead of fetching the entire page contents, or displaying a completely new page, AJAX enables browsers to fetch and update/alter particular sections of page through the HTML, XML or through Javascript.&lt;br /&gt;&lt;br /&gt;I launched my website all&amp;nbsp;full with AJAX, though a very simple one, but it appeared to be very expensive in sense of it&amp;#39;s loading time as well as data size.&lt;br /&gt;&lt;br /&gt;I received couple of comments on my Guest Book as well as some of my collegues verbally told me of reducing the page load time, for atleast the home page. &lt;br /&gt;&lt;br /&gt;Since then, I started doing my research on particularly reducing the page size and then in general, the appropriate combination of AJAX.&lt;br /&gt;&lt;br /&gt;Consider the following general Scenario for your website size and images : - &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;Bigger than 60k in size&lt;/strong&gt; : Your visitors will be unlikely to wait around and see your homepage.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;50k to 60k&lt;/strong&gt; : You visitors may see your first page, but may wary to wait and see second page.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;40k to 50k&lt;/strong&gt; : Better, but you may still loose visitors.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;30k to 40k&lt;/strong&gt; : Absolute, largest and serious sites would be. &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;20k to 30k&lt;/strong&gt; : Responsive, and likely to get second visit.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;10k to 20k&lt;/strong&gt; : Very responsive and a pleasure for your visitors.&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Obvisouly!&amp;nbsp;&amp;nbsp;my website had gone above 500k and it was Huge difference, and to make it shorter upto the mark, lots of changes were required. &lt;br /&gt;&lt;br /&gt;Since the &lt;strong&gt;&lt;em&gt;&lt;u&gt;HomePage&lt;/u&gt;&lt;/em&gt;&lt;/strong&gt; of your web-site is&amp;nbsp;considered as a &lt;u&gt;&lt;strong&gt;&lt;em&gt;Gateway&lt;/em&gt;&lt;/strong&gt;&lt;/u&gt;, that would lead you to the&amp;nbsp;( text and graphics based&amp;nbsp;) content. If the &lt;strong&gt;&lt;em&gt;&lt;u&gt;HomePage&lt;/u&gt;&lt;/em&gt;&lt;/strong&gt; is very heavy just like what I have at &lt;a href="http://www.raheelhussain.com/"&gt;http://www.raheelhussain.com/&lt;/a&gt; , it is possible that the &lt;strong&gt;&lt;em&gt;&lt;u&gt;Search Engine Spider&lt;/u&gt;&lt;/em&gt;&lt;/strong&gt; that might want to index your&amp;nbsp;&lt;strong&gt;&lt;em&gt;&lt;u&gt;HomePage&lt;/u&gt;&lt;/em&gt;&lt;/strong&gt; and entire site, might skip you (I mean your website) if it gets &lt;strong&gt;&lt;u&gt;&lt;em&gt;Timed Out&lt;/em&gt;&lt;/u&gt;&lt;/strong&gt; while loading your page.&lt;/p&gt;
&lt;p&gt;The page size of your HomePage for such a case (recommended by many experience webmasters) should be less than 125k.&lt;/p&gt;
&lt;p&gt;While analysing my website, I found of couple of more things : &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;A huge amount of ViewState - Hidden Data&lt;/strong&gt;&amp;nbsp; &lt;br /&gt;Due to AJAX implementation,&amp;nbsp;the View State gets increased, unless we explicitly disable it on all occurances except wherever required.&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;Script Source Files with AJAX may increase your page size&lt;/strong&gt;&lt;br /&gt;When you use AJAX in your site, it includes lots of&amp;nbsp;Script Sources files&amp;nbsp;in the page sources, to support the functionalities like as follows : &lt;br /&gt;&lt;br /&gt;&lt;u&gt;&amp;lt;script src=&amp;quot;/ScriptResource.axd?d=e0Z5w1xlI94kfI-ca3Wnd_wh0&amp;amp;amp;t=633309435532426250&amp;quot; type=&amp;quot;text/javascript&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;You will find a big number of References to such files... the more you use different AJAX functionalities on to the site. &lt;br /&gt;So the recommendation is that you may use very less AJAX functionality on the HomePage at least.&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;Too many External Http Objects references.&lt;br /&gt;&lt;/strong&gt;To further explain this, each reference to an external file is refered as an external HTTP Object, You may take the example of &lt;a href="http://www.google.ae/"&gt;http://www.google.ae/&lt;/a&gt; or &lt;br /&gt;&lt;a href="http://www.yahoo.com/"&gt;http://www.yahoo.com/&lt;/a&gt; as these sites are with very less references to external object and are really fast loading. &lt;br /&gt;&lt;br /&gt;To demonstrate this, I went to &lt;a href="http://www.websiteoptimization.com/services/analyze/"&gt;http://www.websiteoptimization.com/services/analyze/&lt;/a&gt;&amp;nbsp;which is a free tool to analyze your site. &lt;br /&gt;I did that for &lt;a href="http://www.yahoo.com/"&gt;http://www.yahoo.com/&lt;/a&gt;&amp;nbsp;, &amp;nbsp;&lt;a href="http://www.google.ae/"&gt;http://www.google.ae/&lt;/a&gt; and finally for my website &lt;a href="http://www.raheelhussain.com/"&gt;http://www.raheelhussain.com/&lt;/a&gt; for comparision. &lt;br /&gt;&lt;br /&gt;Though the site for &lt;a href="http://www.asp.net/"&gt;http://www.asp.net/&lt;/a&gt; is also heavy, but my website (being very simple) was more havier than it. &lt;br /&gt;&lt;br /&gt;You when you do it, you&amp;#39;ll see the external object references, listed in a separate table. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://dnfug.com/Web/blogs/raheel/ajax2_1.GIF"&gt;&lt;/a&gt;&lt;a href="http://dnfug.com/Web/blogs/raheel/ajax2_1.GIF"&gt;&lt;/a&gt;&lt;a href="http://dnfug.com/Web/blogs/raheel/ajax2_2.GIF"&gt;&lt;img src="http://dnfug.com/Web/blogs/raheel/ajax2_2.GIF" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Above is for &lt;a href="http://www.yahoo.com/"&gt;http://www.yahoo.com/&lt;/a&gt; and &lt;a href="http://www.google.ae/"&gt;http://www.google.ae/&lt;/a&gt;&amp;nbsp;&amp;nbsp;is even better with less load time. &lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;Image sizes&lt;/strong&gt;&amp;nbsp;&lt;br /&gt;Offcourse the image sizes&amp;nbsp;need to be lesser&amp;nbsp;unless there&amp;#39;s&amp;nbsp;really a need to put a bigger&amp;nbsp;image file on the homepage.&amp;nbsp;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;&lt;strong&gt;And the Important One - The GuestBook&lt;/strong&gt;&amp;nbsp; &lt;br /&gt;Since the Guestbook&amp;nbsp;consumes/implements&amp;nbsp;most of the AJAX functionalitiy. The conclusion to this is, that unless you do not have&amp;nbsp;a requirement, keep all the &lt;br /&gt;functionality in the inside pages, rather than keeping it on the Homepage. &amp;nbsp;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Working out further, I gathered following Tips and Tricks to make a website, or at least the home page efficient and fast loading. &lt;br /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;Fewer external Objects, means try to group them maximum into&amp;nbsp;one combined, rather than many.&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;Turn on &lt;a href="http://httpd.apache.org/docs/2.0/mod/core.html#keepalive"&gt;HTTP keepalives&lt;/a&gt; for external objects. Otherwise you add an extra round-trip to do another &lt;a href="http://en.wikipedia.org/wiki/Transmission_Control_Protocol#Connection_establishment"&gt;TCP three-way handshake&lt;/a&gt; for every HTTP request. If you are worried about hitting global server connection limits, set the keepalive timeout to something short, like 5-10 seconds. Also look into serving your static content from a different webserver than your dynamic content. Having thousands of connections open to a stripped down static file webserver can happen in like 10 megs of RAM total, whereas your main webserver might easily eat 10 megs of RAM per connection.&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;p&gt;If your users regularly load a dozen or more uncached or uncacheable objects per page, consider evenly spreading those objects over four hostnames. This usually means your users can have 4x as many outstanding connections to you. Without HTTP pipelining, this results in their average request latency dropping to about 1/4 of what it was before.&lt;/p&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;p&gt;Minimize HTTP response size by enabling gzip compression for HTML and XML for browsers that support it. For example, the 17k document you are reading takes 90ms of the full downstream bandwidth of a user on 1.5Mbit DSL. Or it will take 37ms when compressed to 6.8k. That&amp;#39;s 53ms off of the full page load time for a simple change. If your HTML is bigger and more redundant, you&amp;#39;ll see an even greater improvement.&lt;/p&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;
&lt;p&gt;I&amp;#39;ve implemented most of the changes on my website but it is yet to go live again. &lt;br /&gt;Possibly by the end of this month. &lt;br /&gt;&lt;br /&gt;Regards - raheel Hussain&lt;br /&gt;&lt;br /&gt;References : &lt;br /&gt;&lt;a href="http://www.websiteoptimization.com/services/analyze/wso.php"&gt;http://www.websiteoptimization.com/services/analyze/wso.php&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.websiteoptimization.com/services/analyze/"&gt;http://www.websiteoptimization.com/services/analyze/&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=132" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author><category term="SEO" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/SEO/default.aspx" /><category term="AJAX" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/AJAX/default.aspx" /></entry><entry><title>Biggest Online Collection of Free Books </title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2007/12/28/biggest-online-collection-of-free-books.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2007/12/28/biggest-online-collection-of-free-books.aspx</id><published>2007-12-28T15:04:00Z</published><updated>2007-12-28T15:04:00Z</updated><content type="html">&lt;p&gt;Hello all, &lt;br /&gt;&lt;br /&gt;Just got to know from a very good friend of mine, ... and thought to share it on my blog too&amp;nbsp;&lt;br /&gt;&lt;br /&gt;Whether it is Network, Programming, Certification, Webvelopment .............. &lt;br /&gt;Microsoft ....... Sun Microsystems... or Security etc. &lt;br /&gt;&lt;br /&gt;All the latest books and&amp;nbsp;you may find almost all the books &lt;br /&gt;&lt;br /&gt;Just check it out, &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.xpressionsz.com/"&gt;http://www.xpressionsz.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Regards - raheel &amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=125" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author><category term="Microsoft Certification" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/Microsoft+Certification/default.aspx" /><category term="eBooks" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/eBooks/default.aspx" /><category term="Certification Books" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/Certification+Books/default.aspx" /></entry><entry><title>Free Voucher for Microsoft Certification Exam</title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2007/12/28/free-re-take-voucher-for-microsoft-certifications-exams.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2007/12/28/free-re-take-voucher-for-microsoft-certifications-exams.aspx</id><published>2007-12-28T14:49:00Z</published><updated>2007-12-28T14:49:00Z</updated><content type="html">&lt;p&gt;This is a very good but limited offer from Microsoft, to get a second chance to appear for the same exam if you fail. &lt;br /&gt;&lt;br /&gt;Its a second shot for you&lt;br /&gt;&lt;br /&gt;- Register with any prometric&amp;nbsp;test center of you region/area to appear in the exam&lt;br /&gt;- Take the exam &lt;br /&gt;- &lt;strong&gt;&lt;u&gt;Suppose if you fail&lt;/u&gt;&lt;/strong&gt; then show this Voucher to the Prometric center and re-schedule and register for the same exam &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;For more details follow the link :&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/learning/mcp/offers/secondshot/default.mspx"&gt;http://www.microsoft.com/learning/mcp/offers/secondshot/default.mspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Good Luck ! &amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=124" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author><category term="Microsoft Certification" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/Microsoft+Certification/default.aspx" /></entry><entry><title>Page Load with AJAX &amp; XML </title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2007/12/03/page-load-with-ajax-amp-xml.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2007/12/03/page-load-with-ajax-amp-xml.aspx</id><published>2007-12-03T09:01:00Z</published><updated>2007-12-03T09:01:00Z</updated><content type="html">&lt;p&gt;&lt;a href="http://dnfug.com/Web/blogs/raheel/ajax_ek_3.GIF"&gt;&lt;/a&gt;With the arrival of AJAX, lots of things have improved as well as it also adds interactivity and fanciness in your applications. &lt;br /&gt;&lt;br /&gt;Here it is about no rocket science but an interesting scenario, that is&amp;nbsp;to display&amp;nbsp;the data received&amp;nbsp;from the web service in the&amp;nbsp;XML format the AJAX way during the page loading of a website. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Scenario : -&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;I&amp;#39;ve a web service, which returns a XML data. The requirement is to display that XML in tabular format during the page_load of your web site as well as with the AJAX style of fanciness with some update progress animations etc.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;There were two reasons for which I had to go with the client side script rather than returning a dataset and binding it with a GridView. &lt;br /&gt;&lt;br /&gt;First was that a I was unable to find way to control or manipulate a DataSet through javascript, and second was that it is something about incremental page load which involve AJAX style loading of the page&amp;nbsp;involving update progress animation, and hence requires a client side script to come into action.&lt;br /&gt;&lt;br /&gt;Lets start with a simple web service which returns XML records, Here&amp;#39;s the code which I did&lt;/p&gt;
&lt;div style="BORDER-RIGHT:1px solid;BORDER-TOP:1px solid;OVERFLOW:scroll;BORDER-LEFT:1px solid;WIDTH:546px;BORDER-BOTTOM:1px solid;BACKGROUND-COLOR:#f5f5f5;"&gt;&lt;pre&gt;Imports System.Data
Imports System.Web
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.Web.Script.Services

&amp;lt;WebService(Namespace:=&amp;quot;http://tempuri.org/&amp;quot;)&amp;gt; _
&amp;lt;WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)&amp;gt; _
&amp;lt;Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()&amp;gt; _
&amp;lt;System.Web.Script.Services.ScriptService()&amp;gt; _
Public Class WebService
    Inherits System.Web.Services.WebService
    &amp;lt;WebMethod()&amp;gt; _
    Public Function getIndianTeam() As String
        Dim ds As New DataSet
        System.Threading.Thread.Sleep(2000)
        ds.ReadXml(Server.MapPath(&amp;quot;App_Data/IND.xml&amp;quot;))
        Return ds.GetXml()
    End Function

    &amp;lt;WebMethod()&amp;gt; _
    Public Function getPakistanTeam() As String
        Dim ds As New DataSet
        System.Threading.Thread.Sleep(4000)
        ds.ReadXml(Server.MapPath(&amp;quot;App_Data/PK.xml&amp;quot;))
        Return ds.GetXml()
    End Function
End Class

&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;Note: In my application, I&amp;#39;m retreiving the records (into the DataSet) from the database though, but here I&amp;#39;m reading an XML file rather (for example purpose).&lt;br /&gt;Another thing to notice is that you need to add&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;font size="2"&gt;&amp;quot;Imports System.Web.Script.Services&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;statement on the top of your code file in the webservice. as well as the following code &lt;br /&gt;&lt;br /&gt;&amp;quot;&lt;font size="2"&gt;&amp;lt;System.Web.Script.Services.ScriptService()&amp;gt; _&amp;quot;&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;which can be seen in the code given above. These two statements are not by-default part of the code, when you add a new webservice page into your project.&lt;font size="2"&gt;&lt;br /&gt;&lt;/font&gt;We are going to consume the web service in the default.aspx page. &lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div style="BORDER-RIGHT:1px solid;BORDER-TOP:1px solid;OVERFLOW:scroll;BORDER-LEFT:1px solid;WIDTH:546px;BORDER-BOTTOM:1px solid;BACKGROUND-COLOR:#f5f5f5;"&gt;&lt;a href="http://dnfug.com/Web/blogs/raheel/ajax_ek_1.GIF"&gt;&lt;img src="http://dnfug.com/Web/blogs/raheel/ajax_ek_1.GIF" border="0" alt="" /&gt;&lt;/a&gt; &lt;/div&gt;
&lt;p&gt;&lt;br /&gt;The image&amp;nbsp;above describes you what you need to do in your default.aspx page. I&amp;#39;ve placed an&amp;nbsp;HTML&amp;nbsp;Table with four rows.&amp;nbsp;Row1 and Row3 has labels with&amp;nbsp;headings &amp;quot;Pakistan Team&amp;quot; and &amp;quot;Indian Team&amp;quot; respectively. Row2 and Row4 has Label controls as&amp;nbsp;well as an animated GIF (can&amp;nbsp;be of your choice) which&amp;nbsp;will act as what the name suggests the Update Progress animation.&lt;br /&gt;&lt;br /&gt;Also note that the cell at Row2 and that of Row4 has been named as &amp;quot;tdPak&amp;quot; and &amp;quot;tdInd&amp;quot; respectively.&lt;/p&gt;
&lt;p&gt;For this example, I&amp;#39;ve placed two XML files PK.xml and IND.xml inside the App_Data folder of the project. following image shows the solution explorer with the complete file and directory structure of this project.&lt;/p&gt;
&lt;div style="BORDER-RIGHT:1px solid;BORDER-TOP:1px solid;OVERFLOW:scroll;BORDER-LEFT:1px solid;WIDTH:546px;BORDER-BOTTOM:1px solid;BACKGROUND-COLOR:#f5f5f5;"&gt;&lt;a href="http://dnfug.com/Web/blogs/raheel/ajax_ek_2.GIF"&gt;&lt;img src="http://dnfug.com/Web/blogs/raheel/ajax_ek_2.GIF" border="0" alt="" /&gt;&lt;/a&gt; &lt;/div&gt;
&lt;p&gt;Next thing we need to do is to write client side code which will interact with the webservice. Before doing that select the Script Manager in the design mode of your default.aspx file and click on properties (or press F4) and click on the Service Collection, which will open up the following window.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div style="BORDER-RIGHT:1px solid;BORDER-TOP:1px solid;OVERFLOW:scroll;BORDER-LEFT:1px solid;WIDTH:546px;BORDER-BOTTOM:1px solid;BACKGROUND-COLOR:#f5f5f5;"&gt;&lt;a href="http://dnfug.com/Web/blogs/raheel/ajax_ek_3.GIF"&gt;&lt;img src="http://dnfug.com/Web/blogs/raheel/ajax_ek_3.GIF" border="0" alt="" /&gt;&lt;/a&gt; &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Click the Add button to add a new service reference to your Script Manager, this will enable you to use the web service in your code. Also since the webservice.asmx file is a part of your project, hense there&amp;#39;s no need to write the whole path i.e. &lt;a href="http://www.xyz.com/services/myservice.asmx"&gt;http://www.xyz.com/services/myservice.asmx&lt;/a&gt; etc. but you may only specify the name of the webservice file that is webservice.asmx. 
&lt;p&gt;Now you are able to use the webservice in your client script. Here&amp;#39;s what we need to do now.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div style="BORDER-RIGHT:1px solid;BORDER-TOP:1px solid;OVERFLOW:scroll;BORDER-LEFT:1px solid;WIDTH:546px;BORDER-BOTTOM:1px solid;BACKGROUND-COLOR:#f5f5f5;"&gt;&lt;pre&gt;&amp;lt;head runat=&amp;quot;server&amp;quot;&amp;gt;
    &amp;lt;title&amp;gt;AJAX With XML&amp;lt;/title&amp;gt;
    &amp;lt;LINK rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; href=&amp;quot;StyleSheet.css&amp;quot; /&amp;gt;
    &amp;lt;script language=&amp;quot;javascript&amp;quot;&amp;gt;
        function pageLoad() {
        vResult = WebService.getPakistanTeam(onRetreivePK,onError);
        vResult = WebService.getIndianTeam(onRetreiveIN,onError);        
        }
        
        function onRetreivePK(vResult){
            loadXML(vResult,1);
            }
            
        function onRetreiveIN(vResult){
            loadXML(vResult,2);
            }
            
        var xmlDoc = new ActiveXObject(&amp;quot;Microsoft.XMLDOM&amp;quot;);
        function loadXML(xmlString,obj) { 
          xmlDoc.async=&amp;quot;false&amp;quot;;
          xmlDoc.onreadystatechange=verify;
          xmlDoc.loadXML(xmlString);
          displayXMLGrid(xmlDoc,obj);
        }
        
        function displayXMLGrid(xmlDoc,obj) {
            var root = xmlDoc.firstChild;
            var i=0;
            var strResult=&amp;quot;&amp;lt;table border=&amp;#39;0&amp;#39; style=&amp;#39;width:100%&amp;#39;&amp;gt;&amp;quot;;
            var tClass = &amp;quot;tdA&amp;quot;;
            
            if (root.hasChildNodes) {
                var v = root.childNodes[0];
                while (v != null) {
                    v = root.childNodes[ i ];
                    if      (v==null) break;
                    if (tClass==&amp;quot;tdA&amp;quot;) tClass = &amp;quot;tdB&amp;quot;;
                    else tClass = &amp;quot;tdA&amp;quot;;
                    
                    strResult +=&amp;quot;&amp;lt;tr&amp;gt;&amp;quot;;
                    strResult +=&amp;quot;&amp;lt;td class=&amp;#39;&amp;quot; + tClass + &amp;quot;&amp;#39;&amp;gt;&amp;quot; + v.attributes[0].text + &amp;quot;&amp;lt;/td&amp;gt;&amp;quot;;
                    strResult +=&amp;quot;&amp;lt;td class=&amp;#39;&amp;quot; + tClass + &amp;quot;&amp;#39;&amp;gt;&amp;quot; + v.attributes[1].text + &amp;quot;&amp;lt;/td&amp;gt;&amp;quot;;
                    strResult +=&amp;quot;&amp;lt;/tr&amp;gt;&amp;quot;;
                    i++;
                    }                    
                }
                strResult += &amp;quot;&amp;lt;/table&amp;gt;&amp;quot;;
                
                if      (obj==1)    document.getElementById(&amp;quot;tdPak&amp;quot;).innerHTML=strResult;
                else if (obj==2)    document.getElementById(&amp;quot;tdInd&amp;quot;).innerHTML=strResult;
            }
            
        
        function verify() {
          // 0 Object is not initialized // 1 Loading object is loading data // 2 Loaded object has loaded data
          // 3 Data from object can be worked with // 4 Object completely initialized
          if (xmlDoc.readyState != 4) {
            return false;
          }
        }        
        function onError(vResult){  alert(vResult);  }
    &amp;lt;/script&amp;gt;
&amp;lt;/head&amp;gt;

&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;In the above code, as you can see that I&amp;#39;m calling the Webservice methods to retreive the&amp;nbsp;data in the form of XML. while the&amp;nbsp;function calls have two arguments&amp;nbsp;one is OnRetreivePK and second is OnError. These are&amp;nbsp;basically&amp;nbsp;sub routines ( or events&amp;nbsp;) rather than arguments, telling the method call that to call the OnRetreivePK method upon successfully receiving data and go to the OnError event if some error occurs.&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve used Microsoft.XMLDOM class with couple of methods of it to iterate through the nodes of the XML data retreived which very easy to understand, and then populating the cells of the table&amp;nbsp;depending on&amp;nbsp;the argument received. &lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div style="BORDER-RIGHT:1px solid;BORDER-TOP:1px solid;OVERFLOW:scroll;BORDER-LEFT:1px solid;WIDTH:546px;BORDER-BOTTOM:1px solid;BACKGROUND-COLOR:#f5f5f5;"&gt;&lt;a href="http://dnfug.com/Web/blogs/raheel/ajax_ek_4.GIF"&gt;&lt;img src="http://dnfug.com/Web/blogs/raheel/ajax_ek_4.GIF" border="0" alt="" /&gt;&lt;/a&gt; &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Your&amp;nbsp;application is ready to perform now. &lt;br /&gt;You can now run the application and it will show up with some nice and fancy style loading that is light weight as well as faster. &lt;br /&gt;&lt;br /&gt;You can download the source code by clicking on the Following link. &lt;a href="http://dnfug.com/Web/blogs/raheel/AJAXWeb2.zip"&gt;AJAXWeb2.zip&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Happy Coding &amp;amp; Regards - raheel &lt;br /&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=120" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author><category term="XML" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/XML/default.aspx" /><category term="Web Services" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/Web+Services/default.aspx" /><category term="AJAX" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/AJAX/default.aspx" /><category term="Page Load" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/Page+Load/default.aspx" /><category term="Update Progress" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/Update+Progress/default.aspx" /></entry><entry><title>Working with AJAX - Part 1</title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2007/11/24/working-with-ajax-1-0.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2007/11/24/working-with-ajax-1-0.aspx</id><published>2007-11-24T09:23:00Z</published><updated>2007-11-24T09:23:00Z</updated><content type="html">&lt;p&gt;If you have not yet started working with AJAX, then this article will help you quick with it. You will AJAX style of development&amp;nbsp;a fun-to-do. Lets have a look.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;The Installation&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;The installation of AJAX extensions 1.0 is fairly easy. &lt;br /&gt;&lt;br /&gt;We need to install the &amp;quot;ASPAJAXExtSetup.msi&amp;quot; this can be downloaded from&amp;nbsp; &lt;a href="http://www.asp.net/ajax/downloads/"&gt;http://www.asp.net/ajax/downloads/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Note that the AJAX Extensions 1.0.11119.0. are meant to be used with ASP.NET 2.0 and with Visual Studio 2005, while AJAX Library 3.5&amp;nbsp;is now&amp;nbsp;also available for .NET framework 3.5 and Visual Studio 2008.&amp;nbsp; However, we will still talk about AJAX 1.0 extensions. &lt;br /&gt;&lt;br /&gt;When you run the AJAX 1.0 extensions setup, this will instal the &amp;quot;System.Web.Extensions.dll&amp;quot; and&amp;nbsp; System.Web.Extensions.Design.dll&amp;quot; to your machine or to the your Global Assembly Cache of your machine.&lt;/p&gt;
&lt;p&gt;You can go an see both of the files under the following path C:\Windows\Assembly\&lt;br /&gt;&lt;br /&gt;Congratulations ! your Visual Studio 2005 is ready for doing AJAX style of development. Start your VS 2005 right a way and start a new website. You will notice that the toolbox now has an additional Tab by the name of AJAX Extensions &lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div style="BORDER-RIGHT:1px solid;BORDER-TOP:1px solid;OVERFLOW:scroll;BORDER-LEFT:1px solid;WIDTH:546px;BORDER-BOTTOM:1px solid;BACKGROUND-COLOR:#f5f5f5;"&gt;&lt;a href="http://dnfug.com/Web/blogs/raheel/ajax_1.gif"&gt;&lt;img src="http://dnfug.com/Web/blogs/raheel/ajax_1.gif" border="0" alt="" /&gt;&lt;/a&gt; &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;strong&gt;Making the First Program .. Hello AJAX World &lt;/strong&gt;&lt;/u&gt;
&lt;p&gt;Start a new website and double click on default.aspx (from project explorer view) to open it in design mode.&lt;/p&gt;
&lt;p&gt;Place a label control, and a&amp;nbsp;button on the page. Name the label control as &amp;quot;lblMessage&amp;quot; and the button as &amp;quot;cmdTest&amp;quot; or whatever you like.&lt;/p&gt;
&lt;p&gt;Change the text of the button as &amp;quot;Test the AJAX&amp;quot;. &lt;/p&gt;
&lt;p&gt;Double click on the button, to go to the code view and write the following code:&lt;/p&gt;
&lt;div style="BORDER-RIGHT:1px solid;BORDER-TOP:1px solid;OVERFLOW:scroll;BORDER-LEFT:1px solid;WIDTH:546px;BORDER-BOTTOM:1px solid;BACKGROUND-COLOR:#f5f5f5;"&gt;&lt;pre&gt;Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmdTest.Click
        lblMessage.Text = &amp;quot;Hello to AJAX World. Today&amp;#39;s Date is &amp;quot; &amp;amp; System.DateTime.Now.ToString(&amp;quot;dd-MMM-yyyy hh:mm:ss&amp;quot;)
    End Sub
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Now, press F5 to run the project, &lt;/p&gt;
&lt;p&gt;Click the Button on the page to test the results.&lt;/p&gt;
&lt;p&gt;You will notice that as soon as you click the button, the page Posts back itself (or the page Refreshes) to display the Message with date/time.&lt;/p&gt;
&lt;p&gt;However, this is not the end of the story&amp;nbsp;because AJAX has not yet come into the picture.&lt;/p&gt;
&lt;p&gt;While the page open in design mode, go to the toolbox and double click on Script Manager under the AJAX extensions&lt;br /&gt;This will put a Script Manager control on your page, which is responsible for managing/handling all AJAX scripts at the&amp;nbsp;runtime&lt;br /&gt;&lt;br /&gt;Select an UpdatePanel from the toolbox (under the AJAX Extensions menu) and place it on the form &lt;/p&gt;
&lt;p&gt;Next, drag and place the Label control as well as the Button inside the UpdatePanel as shown in the figure below&lt;/p&gt;
&lt;div style="BORDER-RIGHT:1px solid;BORDER-TOP:1px solid;OVERFLOW:scroll;BORDER-LEFT:1px solid;WIDTH:546px;BORDER-BOTTOM:1px solid;BACKGROUND-COLOR:#f5f5f5;"&gt;&lt;a href="http://dnfug.com/Web/blogs/raheel/ajax_ek_5.GIF"&gt;&lt;img src="http://dnfug.com/Web/blogs/raheel/ajax_ek_5.GIF" border="0" alt="" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Now Press F5 to run the application again. This time you&amp;#39;ll notice that the page doesn&amp;#39;t post back, but still displays the results on each click. This is basically running the server side code you&amp;#39;ve written under the click event of the button but, since we&amp;#39;ve used the UpdatePanel in the page and the purpose of the update panel is to tell the scriptmanager that which particular section&amp;nbsp;of the page needs to be updated rather than the whole Page Postback.&lt;/p&gt;
&lt;p&gt;With the AJAX tecnique, the data is posted back and retreived using the XMLHTTP (or XML over HTTP protocol).&lt;/p&gt;
&lt;div&gt;Also, It is not necessary that you should place the button inside the Updatepanel, but you can put the button outside the Panel and control the Postback by specifying the Triggers inside the UpdatePanel triggers collection property.&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;Here&amp;#39;s how we do it. &lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;Put the button somewhere outside the Updatepanel (Drag it outside) &lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;Click on the updatepanel in the design mode of the page, and then press F4 to open the properties window.&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;Click the Trigges property to open the &amp;quot;UpdatepanelTriggers Collection Editor&amp;quot; window shown in below image&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style="BORDER-RIGHT:1px solid;BORDER-TOP:1px solid;OVERFLOW:scroll;BORDER-LEFT:1px solid;WIDTH:546px;BORDER-BOTTOM:1px solid;BACKGROUND-COLOR:#f5f5f5;"&gt;&lt;a href="http://dnfug.com/Web/blogs/raheel/ajax_ek_6.GIF"&gt;&lt;img src="http://dnfug.com/Web/blogs/raheel/ajax_ek_6.GIF" border="0" alt="" /&gt;&lt;/a&gt; &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The above diagram shows that when you click on the Add button it will show you two triggers, AsyncPostBackTrigger and PostBackTrigger. &lt;br /&gt;You need to add the AsyncPostBackTrigger, we will&amp;nbsp;talk about the PostbackTrigger later discussions. 
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;The diagram exaplains you everything, that you need to select the &lt;strong&gt;ControlID &lt;/strong&gt;and the Event of the TargetControl. &lt;br /&gt;&lt;br /&gt;After setting all up, press Ok, and then press F5 to run the application. You will notice that, even though the button is outside the Updatepanel, but has the same result. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Conclusion&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;AJAX stands for Asynchronous JavaScript and XML. &lt;/div&gt;
&lt;div&gt;AJAX fine tunes your pages to have greater user experience.&lt;/div&gt;
&lt;div&gt;Particular parts or section of the page can be loaded without posting back the whole page with the help of XMLHttp (the technique of AJAX)&lt;/div&gt;
&lt;div&gt;If a button is inside the Updatepanel, there is no need to define a trigger for that button inside the Updatepanel.&lt;/div&gt;
&lt;div&gt;There can be more than one Updatepanel inside a page, each of which can be used for updating and retrieving content separately without page postback.&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;In working with AJAX Part 2, we are going to discuss about the AJAX Control and&amp;nbsp;Control extenders&amp;nbsp;shipped with the AJAX Control Toolkit.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Regards - raheel&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=116" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author><category term="XML" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/XML/default.aspx" /><category term="AJAX" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/AJAX/default.aspx" /><category term="Updatepanel" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/Updatepanel/default.aspx" /></entry><entry><title>Visual Studio 2008 And .NET 3.5 Launched</title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2007/11/20/visual-studio-2008-and-net-3-5-launched.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2007/11/20/visual-studio-2008-and-net-3-5-launched.aspx</id><published>2007-11-20T17:32:00Z</published><updated>2007-11-20T17:32:00Z</updated><content type="html">&lt;p&gt;Today Microsoft has launched the Visual Studio 2008 and .NET 3.5 &lt;br /&gt;&lt;br /&gt;Follwing are the typical highlights &lt;br /&gt;&lt;br /&gt;- VS 2008 Multi-Targeting Support&lt;br /&gt;- ASP.NET AJAX and JavaScript Support&lt;br /&gt;- VS 2008 Web Designer and CSS Support&lt;br /&gt;- Language Improvements and LINQ &lt;br /&gt;&lt;br /&gt;For further information, please follow the following URL.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/11/19/visual-studio-2008-and-net-3-5-released.aspx"&gt;http://weblogs.asp.net/scottgu/archive/2007/11/19/visual-studio-2008-and-net-3-5-released.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=108" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author><category term="Visual Studio 2008" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/Visual+Studio+2008/default.aspx" /><category term=".NET 3.5" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/.NET+3.5/default.aspx" /></entry><entry><title>I've Launched My Website ! </title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2007/11/18/i-ve-launched-my-website.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2007/11/18/i-ve-launched-my-website.aspx</id><published>2007-11-18T19:05:00Z</published><updated>2007-11-18T19:05:00Z</updated><content type="html">&lt;p&gt;For past 7 years I&amp;#39;ve been developing different applications (Software &amp;amp; Websites) for different organizations and individuals, but I never thought that&amp;nbsp;when it comes to making your&amp;nbsp;OWN website then it seems like a difficult task. Specially when it comes to having something for your own you definetely think of having something unique but infact it is not about the uniqueness.&lt;/p&gt;
&lt;p&gt;I remember one saying which I is one of my favorite proverb which says that &lt;/p&gt;
&lt;p&gt;&amp;quot;Everybody is unique .. just like everybody else..&amp;quot;&lt;/p&gt;
&lt;p&gt;So I just quit thinking so much and about making a unique state of art or something but here is what I&amp;#39;ve done....&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.raheelhussain.com/"&gt;http://www.raheelhussain.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Although, not very good in design but I&amp;#39;ve made use of XML Web Services, AJAX, Off course ASP.NET, client side Java script and SQL Server and Simplicity.&lt;/p&gt;
&lt;p&gt;Hope you like it and Please... do fill up the guestbook as I really require your input.&lt;/p&gt;
&lt;p&gt;Regards - raheel &lt;/p&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=106" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author></entry><entry><title>Installing Visual Studio 2008 Professional beta 2</title><link rel="alternate" type="text/html" href="http://dnfug.com/Web/blogs/raheel/archive/2007/10/15/installing-visual-studio-2008-professional-beta-2.aspx" /><id>http://dnfug.com/Web/blogs/raheel/archive/2007/10/15/installing-visual-studio-2008-professional-beta-2.aspx</id><published>2007-10-15T21:03:00Z</published><updated>2007-10-15T21:03:00Z</updated><content type="html">&lt;p&gt;After a huge effort of continuous two and a half days (during EID :D) , I installed Visual Studio 2008 beta 2 &lt;/p&gt;
&lt;p&gt;I had lots of problems installing the beta 2 of Visual Studio 2008&lt;/p&gt;
&lt;p&gt;The first hurdle was Microsoft Office 2007, which I didn&amp;#39;t know.. &lt;/p&gt;
&lt;p&gt;Any ways after doing some searches I foundout that I need to uninstall it because there are some compatibility issues.&lt;/p&gt;
&lt;p&gt;Uninstalling the Office 2007 was not the end of the story yet, as because there were some registry entries you need to mannally go and remove or more SPECIFICALLY to make sure that these entries are not left after the un-install.&lt;/p&gt;
&lt;p&gt;I got the following procedure to make sure that Office 2007 is not there in your machine.... &lt;/p&gt;
&lt;div style="BORDER-RIGHT:1px solid;BORDER-TOP:1px solid;OVERFLOW:scroll;BORDER-LEFT:1px solid;WIDTH:546px;BORDER-BOTTOM:1px solid;BACKGROUND-COLOR:#f5f5f5;"&gt;
&lt;p&gt;1) Uninstall all existing Office 2007 suites and/or standalone apps via the &lt;br /&gt;Control Panel, if possible.&lt;/p&gt;
&lt;p&gt;2) Go to Start/Run and type &amp;quot;installer&amp;quot; (w/o quotes). This will bring up the &lt;br /&gt;Windows Installer directory. &lt;/p&gt;
&lt;p&gt;Change to &amp;quot;Details&amp;quot; view if you are not in that view. If you don&amp;#39;t have &lt;br /&gt;&amp;quot;Subject&amp;quot; as a header, then right click on the headers in the directory, &lt;br /&gt;click more, then choose &amp;quot;Subject&amp;quot; so you can see the Subject information for &lt;br /&gt;each item in that directory.&lt;/p&gt;
&lt;p&gt;3) Sort by Subject and observe any items that contain Microsoft Office 2007. &lt;br /&gt;For each Office 2007 item listed, right click on the msi and choose Uninstall.&lt;/p&gt;
&lt;p&gt;4) Check Services and stop the Office Source Engine service if it is running&lt;/p&gt;
&lt;p&gt;5) Delete the following registry keys if present (the asterisk is a wildcard &lt;br /&gt;representing any string of one or more characters):&lt;/p&gt;
&lt;p&gt;HKEY_CURRENT_USER\Software\Microsoft\Office\12.0&lt;/p&gt;
&lt;p&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Delivery\SourceEngine\Downloads\*0FF1CE}-*&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*0FF1CE*&lt;/p&gt;
&lt;p&gt;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ose&lt;/p&gt;
&lt;p&gt;HKEY_CLASSES_ROOT\Installer\Features\*F01FEC&lt;/p&gt;
&lt;p&gt;HKEY_CLASSES_ROOT\Installer\Products\*F01FEC&lt;/p&gt;
&lt;p&gt;HKEY_CLASSES_ROOT\Installer\UpgradeCodes\*F01FEC&lt;/p&gt;
&lt;p&gt;HKEY_CLASSES_ROOT\Installer\Win32Assemblies\*Office12*&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UpgradeCodes\*F01FEC&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\*F01FEC&lt;/p&gt;
&lt;p&gt;6) Find and delete all keys under &lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall&lt;/p&gt;
&lt;p&gt;with a valuename of UninstallString that contains a value with &lt;br /&gt;*\Office Setup Controller\setup.exe*&lt;/p&gt;
&lt;p&gt;7) Delete the following folders (if present):&lt;/p&gt;
&lt;p&gt;%CommonProgramFiles%\Microsoft Shared\OFFICE12&lt;/p&gt;
&lt;p&gt;%CommonProgramFiles%\Microsoft Shared\Source Engine&lt;/p&gt;
&lt;p&gt;%ProgramFiles%\Microsoft Office\Office12 (this is the default location &lt;br /&gt;but can be changed during the installation)&lt;/p&gt;
&lt;p&gt;%appdata%\Microsoft\Document Building Blocks&lt;/p&gt;
&lt;p&gt;%appdata%\Microsoft\Templates&lt;/p&gt;
&lt;p&gt;On all drives remove all folders below the MSOCache\All Users folders &lt;br /&gt;containing the string *0FF1CE}-* &lt;/p&gt;
&lt;p&gt;8) Clear the content of your temporary files directory (go to Start/Run and &lt;br /&gt;type %temp%)&lt;/p&gt;
&lt;p&gt;9) Reboot&lt;/p&gt;
&lt;p&gt;10) Temporarily disable antivirus software and related services&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;Yet again !&amp;nbsp; this was not end of the story too...&lt;/p&gt;
&lt;p&gt;After performing the above tasks I was able to install atleast one product of the Visual Studio 2008 suite That was&amp;nbsp; Microsoft Document explorer 2008&lt;/p&gt;
&lt;p&gt;After atleast 20 attempts I found out that the DVD image (almost 3 GB ) which I downloaded has one package corupt that was Microsoft WebDesignerCore.exe&lt;/p&gt;
&lt;p&gt;Thanks to Aaron Stebner of Microsoft who provided me another link to download that &lt;/p&gt;
&lt;p&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkId=90739"&gt;http://go.microsoft.com/fwlink/?LinkId=90739&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;I&amp;#39;ve just now finished installing VS 2008 beta 2 as well as I tried making my first application on it and will update you with my experiences and what I see new in that&lt;/p&gt;
&lt;p&gt;Cheers ! &lt;/p&gt;
&lt;p&gt;raheel Hussain&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://dnfug.com/Web/aggbug.aspx?PostID=79" width="1" height="1"&gt;</content><author><name>raheel.hussain</name><uri>http://dnfug.com/Web/members/raheel.hussain.aspx</uri></author><category term="Office 2007" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/Office+2007/default.aspx" /><category term=".NET Compact Framework" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/.NET+Compact+Framework/default.aspx" /><category term="Windows XP" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/Windows+XP/default.aspx" /><category term="Visual Studio 2008 Professional beta 2" scheme="http://dnfug.com/Web/blogs/raheel/archive/tags/Visual+Studio+2008+Professional+beta+2/default.aspx" /></entry></feed>