Quantcast
Omar Al Zabir

Biography

Omar, a 24 years old Microsoft MVP, started programming at the ripe old age of ten, winning the Best Competitor Award in a nationwide programming contest. Since then, he's developed projects for companies like HP, Bank of America, Citibank and other companies in the US, Australia, Germany and Bangladesh. His love and passion for Microsoft technologies can be seen at his one-of-a-kind personal homepage www.oazabir.com. Back in 2000, his website showed the potential of Rich Internet Application by simulating Windows 2000 user interface using HTML and Javascript. He is the Co-founder & CTO of Pageflakes Ltd, a web 2.0 Ajax Start Page which is an ASP.NET Ajax masterpiece itself.

Blog

Omar's blog posts are hosted at:
http://msmvps.com/blogs/omar/Default.aspx

Omar also has an O'Reilly blog.

Fast ASP.NET web page loading by downloading multiple javascripts in batch

May 10 2008

A web page can load a lot faster and feel faster if the javascripts on the page can be loaded after the visible content has been loaded and multiple javascripts can be batched into one download. Browsers download one external script at a time and sometimes pause rendering while a… read more

Reduce website download time by heavily compressing PNG and JPEG

April 07 2008

PNG and JPEG are two most popular formats for web graphics. JPEG is used for photographs, screenshots and backgrounds where PNG is used for all other graphics need including cliparts, buttons, headers, footers, borders and so on. As a result, these two types of graphics file usually take up 80%… read more

Fast page loading by postponing ASP.NET AJAX scripts after content

April 06 2008

ASP.NET ScriptManager control has a property LoadScriptsBeforeUI, when set to true, should load all AJAX framework scripts after the content of the page. But it does not effectively push down all scripts after the content. Some framework scripts, extender scripts and other scripts registered by Ajax Control Toolkit still load… read more

HTML and IFRAME widget for Dropthings

April 05 2008

I made two new widgets for Dropthings - one is an HTML widget, that allows you to put any HTML content inside a widget and the other one is an IFRAME widget that allows you to host an IFRAME to any URL. You can see example of these widgets from… read more

Silverlight Pagecast - Keep an eye on Silverlight stuffs

April 30 2008

It looks like a lot is happening on the web related to Silverlight. It's pretty difficult to keep track of all the websites, blogs, videos, del.icio.us links that get published every day or so. So, I created a Silverlight Pagecast (www.pageflakes.com/silverlight) to stay on top of everything's related to Silverlight.… read more

Linq to SQL: How to Attach object to a different data context

April 30 2008

After upgrading to Visual Studio 2008 RTM, you will have trouble updating Linq to SQL Classes which are read from one data context and then updated into another data context. You will get this exception during update: System.NotSupportedException: An attempt has been made to Attach or Add an entity that is not new, perhaps… read more

Making best use of cache for high performance website

April 30 2008

Use URLs consistently Browsers cache content based on the URL. When URL changes, browser fetches a new version from origin server. URL can be changed by changing the query string parameters. For example, “/default.aspx” is cached on the browser. If you request “/default.aspx?123” it will fetch new content from server.… read more

On-demand UI loading on AJAX websites

April 30 2008

AJAX websites are all about loading as many features as possible into the browser without having any postback. If you look at the Start Pages like Pageflakes, it's only one single page that gives you all the features of the whole application with zero postback. A quick and dirty approach for doing this is to… read more

Safe COM: Managed Disposable Strongly Typed safe wrapper to late bound COM

April 30 2008

There are several problems using COM from .NET: You cannot implement the Dispose pattern by utilizing the "using" block in order to safely dispose COM references. You cannot guaranty COM references are finalized. There's no way to implement "~Destructor()" for COM references. COM reference is not released when a call… read more

Fast, Streaming AJAX proxy - continuously download from cross domain

April 14 2008

Due to browser's prohibition on cross domain XMLHTTP call, all AJAX websites must have server side proxy to fetch content from external domain like Flickr or Digg. From client side javascript code, an XMLHTTP call goes to the server side proxy hosted on the same domain and then the proxy downloads the content from the… read more

Reduce website download time by heavily compressing PNG and JPEG

April 09 2008

PNG and JPEG are two most popular formats for web graphics. JPEG is used for photographs, screenshots and backgrounds where PNG is used for all other graphics need including cliparts, buttons, headers, footers, borders and so on. As a result, these two types of graphics file usually take up 80%… read more

Fast page loading by moving ASP.NET AJAX scripts after visible content

April 09 2008

ASP.NET ScriptManager control has a property LoadScriptsBeforeUI, when set to false, should load all AJAX framework scripts after the content of the page. But it does not effectively push down all scripts after the content. Some framework scripts, extender scripts and other scripts registered by Ajax Control Toolkit still load… read more

HTML and IFRAME widget for Dropthings

April 09 2008

I made two new widgets for Dropthings - one is an HTML widget, that allows you to put any HTML content inside a widget and the other one is an IFRAME widget that allows you to host an IFRAME to any URL. You can see example of these widgets from… read more

Desktop RSS Feed Aggregator client with Outlook Integration

April 09 2008

Back in 2005, I built an open source RSS Feed Aggregator Desktop client which has been quite popular since its release. It has 48,672 downloads so far. From the activity I see on sourceforge statistics, it's being used about 20,000 times per day. http://rssfeederdotnet.sourceforge.net/ What is RSS Feeder.NET RSS Feeder.NET… read more

10 ASP.NET Performance and Scalability Secrets

April 09 2008

ASP.NET 2.0 has many secrets, when revealed, can give you big performance and scalability boost. For instance, there are secret bottlenecks in Membership and Profile provider which can be solved easily to make authentication and authorization faster. Furthermore, ASP.NET Http pipeline can be tweaked to avoid executing unnecessary code that gets hit on each… read more
Omar Al Zabir