Omar Al Zabir

http://twitter.com/omaralzabir

London, England

Areas of Expertise:

  • ASP.NET
  • WCF
  • WPF
  • jQuery
  • HTML
  • CSS
  • KnockoutJS
  • consulting
  • speaking
Omar, is the Chief Architect of SaaS Platform at BT, UK. He was the co-founder & CTO of the first Social Web 2.0 Startpage - Pageflakes. He is a Microsoft MVP, 7 times winner. Omar regularly writes at his blog at omaralzabir.com and has 8 popular open source projects.

Building a Web 2.0 Portal with ASP.NET 3.5 Building a Web 2.0 Portal with ASP.NET 3.5
by Omar Al Zabir
December 2007
Print: $44.99
Ebook: $35.99

Omar blogs at:

WPF Maskable Number Entry TextBox

May 25 2013

WPF 'Maskable' Number Entry Box read more

Named Binary Tag serialization

May 25 2013

This article describes the file format NBT and shows how can be implemented in a real application to store data. read more

Holidays and Business Date Calculations and translations

May 25 2013

Add and Subtract Business Days between Dates. Calculate if Date is a Holiday read more

Liskov Substitution

May 24 2013

A view on the principle including possible solutions to the Rectangle/Square example, also explaining why it is not a good example for real programming situations and presenting a more realistic example that you may find while programming. read more

Duck Typing with the Dynamic Keyword

May 24 2013

Don't do this at home. read more

Using Windows Event Viewer to debug crashes

May 24 2013

This article talks about using the Windows event viewer to get the actual crashed module and location of the crash in the code. The sample code is written in C++ to generate different types of crashes like access violation and stack overflow. read more

Enterprise SPA (Single Page Applications)

May 24 2013

How do you write cross-platform line-of-business apps without hiring an army of developers to rewrite your code for multiple clients? This sample app shows a solution—in JavaScript. read more

fastJSON

May 24 2013

Smallest, fastest polymorphic JSON serializer (with Silverlight4 and MonoDroid support) read more

Implementation of Delegates in C++11

May 24 2013

This is an alternative for "Member Function Pointers and the Fastest Possible C++ Delegates" read more

Hack around with PECL libs for PHP in Lubuntu

May 24 2013

Hack around with PECL libs for PHP in Lubuntu. read more

Have faith in your detective mind while dealing with php.ini and Apache2

May 24 2013

Stick to your detective mind no matter how complex the question becomes. read more

Use TinyMCE in ASP.NET Single Page Application (SPA) using Knockout

May 24 2013

CodeProjectIn one of our project, we were creating web site using Asp.Net single page application with knockout.js. We had to add TinyMCE html editor in one of my page. It took some time to make it work. Add binding handler for tinyMce using knock out. Please see code below ko.bindingHandlers.tinym read more

Mobile Browser for PC

May 24 2013

This is a simple mobile web browser for PC, to view mobile web sites in PC( Windows). read more

Using Shape class to display and scale graphics in XNA, WPXNA (3)

May 24 2013

Using Shape class to display and scale graphics in XNA, WPXNA (3). read more

Technical Debt: In an Agile World

May 24 2013

What do we do about technical debt? How does it fit within Agile? Does Agile eliminate or encourage technical debt? read more

Simple shell script to kill an application

May 24 2013

Simple shell script to kill an application. read more

Why Test Driven Development?

May 24 2013

If you don't use TDD, you need to at least try it. read more

Web API - Custom header value provider

May 24 2013

How to pass complex object to server side using GET request. read more

hOOt - full text search engine

May 24 2013

Smallest full text search engine (lucene replacement) built from scratch using inverted WAH bitmap index, highly compact storage, operating in database and document modes read more

Mobile Browser for PC

May 24 2013

This is a simple mobile web browser for PC, to view mobile web sites in PC( Windows). read more

Loading assemblies using Assembly.Load , Assembly.LoadFrom and Assembly.LoadFile

May 24 2013

Loading assemblies using Assembly.Load , Assembly.LoadFrom and Assembly.LoadFile read more

C#: Optional arguments and named arguments and a caution while using interfaces with optional arguments

May 24 2013

.Net framework 4 came with  new feature of Optional arguments and Named parameters. First I will tell in brief what these features are before I go to their use in interface which i want to highlight.In fact it is not .NET 4 but C# 4.0 has come with this feature, that's why while using… read more

Overloading Is A Type Of Dynamic Polymorphism

May 24 2013

An example of overloading dynamic polymorphism read more

Liskov principle implementation

May 24 2013

Simple example of "Liskov principle" read more

What is the difference between Reflection and dynamic keyword in C#?

May 23 2013

In this article we will try to understand two terminologies reflection and dynamic keyword. Many of the developers get confused between them because both of them help us to do dynamic invocation. read more

Dealing with long file names in VB.NET

May 23 2013

A class using Win32 Unicode calls to handle file names/paths longer than 254. read more

Using the Grid.MVC in ASP.NET MVC

May 23 2013

How to use the Grid.MVC in ASP.NET MVC read more

Object Relational Mapping (ORM) using NHibernate - Part 3 of 8: Coding One-to-Many Entity Associations

May 23 2013

A full series of 8 part articles to show One-To-One, Many-To-One, Many-To-Many associations mapping using NHibernate, Using Collections With NHibernate, Inheritance Relationships Using NHibernate, Lazy Initializations/Fetches Using NHibernate. read more

Asynchronous Multi-threaded ObservableCollection

May 23 2013

An implementation of of a multi-threaded ObservableCollection. read more

Terminal Velocity Android

May 23 2013

An android game using NDK JNI and Java. read more

Develop a Cross-Platform Document Imaging Web App

May 23 2013

The article will show you how to develop a cross-platform document imaging solution that works with all mainstream browsers by using ImageCapture Suite. read more

Custom Message Box Using Thread That Closes Automatically

May 23 2013

Implimenting a message box that closes automatically using thread. read more

Visual Studio Solution Load Manager

May 23 2013

Visual Studio extension to change Visual Studio "hidden" option for project loading to reduce loading time for big solutions. read more

CakePHP 2.0 Rant Retraction

May 23 2013

CakePHP 2.0 rant retraction read more

JavaScript Frameworks and Resources

May 23 2013

JavaScript frameworks and resources. read more

Use ResourceManager to manage resources in XNA, WPXNA (2)

May 23 2013

Use ResourceManager to manage resources in XNA. read more

Different ways to implement the scrollbar in a grid

May 23 2013

This is a tip to implement the scrollbar to a grid. read more

Alternative for Ajax AutoComplete control

May 23 2013

Alternative for AutoComplete control without Ajax and Webservices read more

Implementation of type of association.

May 23 2013

Unidirectional,Bidirectional,Aggregation and Composition implementation. read more

Visual Studio Solution Load Manager

May 23 2013

Visual Studio extension to change Visual Studio "hidden" option for project loading to reduce loading time for big solutions. read more

Fabrika LAB: WebCam Video

May 23 2013

Free and easy way to access a web camera by using the Aforge library. read more

Using Azure Lease Blob

May 23 2013

This article describes how the Azure Lease Blob can help the composition of the business model during the runtime in the distributed event-driven pub/sub architecture. read more

Adding SignalR to an ASP.Net WebForms Project

May 23 2013

In this post, I want to demonstrate how you can add real-time interactivity to a website that is written with ASP.Net WebForms.  I'm going to show you how easily and quickly you can have SignalR update the content of a standard ListView webcontrol to show a 'live' log of events… read more

Modern.IE and BrowserStack: The tools we should have had 10 years ago.

May 23 2013

Testing Multiple browsers on Multiple Platforms on Multiple Devices. In the same Window. read more

How to ensure proper dynamic library boundary crossing for objects using smart pointers' custom deleters

May 22 2013

Ensuring that objects allocated in one dynamic library are deleted by the same library has always been a challenge. Solutions prior to the advent of C++11 often make the usage of the library cumbersome. This is a solution using smart pointers' custom deleters. read more
Omar Al Zabir