<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://bloggingabout.net/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">Developer Pills</title><subtitle type="html">Hi my name is Adel and i&amp;#39;m not a recoverd Software Developer.</subtitle><id>http://bloggingabout.net/blogs/adelkhalil/atom.aspx</id><link rel="alternate" type="text/html" href="http://bloggingabout.net/blogs/adelkhalil/default.aspx" /><link rel="self" type="application/atom+xml" href="http://bloggingabout.net/blogs/adelkhalil/atom.aspx" /><generator uri="http://communityserver.org" version="4.1.40407.4157">Community Server</generator><updated>2008-09-27T02:54:41Z</updated><entry><title>Getting SelectedValue from Wpf Combobox</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2009/11/10/getting-selectedvalue-from-wpf-combobox.aspx" /><id>/blogs/adelkhalil/archive/2009/11/10/getting-selectedvalue-from-wpf-combobox.aspx</id><published>2009-11-10T13:41:00Z</published><updated>2009-11-10T13:41:00Z</updated><content type="html">&lt;p&gt;Hi, i don&amp;#39;t know why this seemed not easy but here is how it goes&lt;/p&gt;
&lt;p&gt;Your XAML for the WPF Combo&lt;/p&gt;
&lt;p&gt;&amp;lt;ComboBox Name=&amp;quot;ddlApplication&amp;quot; DisplayMemberPath=&amp;quot;AppName&amp;quot; SelectedValuePath=&amp;quot;ID&amp;quot; &amp;nbsp;SelectedItem=&amp;quot;App&amp;quot; Margin=&amp;quot;92.709,56,220.46,0&amp;quot; VerticalAlignment=&amp;quot;Top&amp;quot; Height=&amp;quot;22.96&amp;quot; SelectionChanged=&amp;quot;ddlApplication_SelectionChanged&amp;quot; /&amp;gt;&lt;/p&gt;
&lt;p&gt;Then you can easily bind a IList&amp;lt;YourObject&amp;gt; like this&lt;/p&gt;
&lt;p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;ddlApplication.ItemsSource = list;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (ddlApplication.HasItems)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ddlApplication.SelectedIndex = 0;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;and getting the selected value is easy as&lt;/p&gt;
&lt;p&gt;
&lt;p&gt;&amp;nbsp;YourObject obj = &amp;nbsp;(YourObject)ddlApplication.SelectedItem;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this.Title =&amp;nbsp;obj&amp;nbsp;.ID.ToString();&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;Done! &amp;nbsp;happy xamiling&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=482437" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term=".NET" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/.NET/default.aspx" /><category term="WPF" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/WPF/default.aspx" /><category term="Tips" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Tips/default.aspx" /></entry><entry><title>Consuming JSON Web Service from jQuery and Server Code</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2009/09/03/consuming-json-web-service-from-jquery-and-server-code.aspx" /><id>/blogs/adelkhalil/archive/2009/09/03/consuming-json-web-service-from-jquery-and-server-code.aspx</id><published>2009-09-03T19:07:37Z</published><updated>2009-09-03T19:07:37Z</updated><content type="html">&lt;p&gt;This is a trick i learned today, if you have your web service returning JSON string to utilize on your ajax calls if you planned to connect to this service using server code (Web Reference) for internal facing app for example you have a problem.&lt;/p&gt;  &lt;p&gt;If you are using HttpModule to alter the content-type to application/json you need to disabled this first, add web reference and then re-enable it again.&lt;/p&gt;  &lt;p&gt;when trying to add web reference with Visual Studio you can’t get valid disco/wsdl files however if you added the reference while disabling the HttpModule and re-enable it again, it works.&lt;/p&gt;  &lt;p&gt;Hope this helps.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=482149" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term="Visual Studio" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Visual+Studio/default.aspx" /><category term="ASP.NET" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/ASP.NET/default.aspx" /><category term="Tips" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Tips/default.aspx" /><category term="JavaScript" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/JavaScript/default.aspx" /><category term="jQuery" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/jQuery/default.aspx" /><category term="JSON" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/JSON/default.aspx" /></entry><entry><title>Cross-domain JSONP with jQuery call step-by-step guide</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2009/08/14/cross-domain-jsonp-with-jquery-call-step-by-step-guide.aspx" /><id>/blogs/adelkhalil/archive/2009/08/14/cross-domain-jsonp-with-jquery-call-step-by-step-guide.aspx</id><published>2009-08-13T22:36:45Z</published><updated>2009-08-13T22:36:45Z</updated><content type="html">&lt;p&gt;I’ve been banging my head all day to accomplish this, it’s like a puzzle.. but since i get it to work i thought i could write this post for you and myself.&lt;/p&gt;  &lt;h2&gt;What we want to accomplish?&lt;/h2&gt;  &lt;p&gt;Simple way to communicate cross-domain with ASMX .NET 3.5 Web Service&lt;/p&gt;  &lt;h2&gt;How can we do it?&lt;/h2&gt;  &lt;h3&gt;1. Implement a web service method like the following&lt;/h3&gt;  &lt;pre class="code"&gt;   [&lt;span style="color:#2b91af;"&gt;ScriptService&lt;/span&gt;]
   &lt;span style="color:blue;"&gt;public class &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;JSONP_EndPoint &lt;/span&gt;: System.Web.Services.&lt;span style="color:#2b91af;"&gt;WebService
   &lt;/span&gt;{
       [&lt;span style="color:#2b91af;"&gt;WebMethod&lt;/span&gt;]
       [&lt;span style="color:#2b91af;"&gt;ScriptMethod&lt;/span&gt;(UseHttpGet = &lt;span style="color:blue;"&gt;true&lt;/span&gt;,ResponseFormat = &lt;span style="color:#2b91af;"&gt;ResponseFormat&lt;/span&gt;.Json)]
       &lt;span style="color:blue;"&gt;public string &lt;/span&gt;Sum(&lt;span style="color:blue;"&gt;string &lt;/span&gt;x,&lt;span style="color:blue;"&gt;string &lt;/span&gt;y)
       {
           &lt;span style="color:blue;"&gt;return &lt;/span&gt;x + y;&lt;span style="color:green;"&gt;
       &lt;/span&gt;}
   }&lt;/pre&gt;
&lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt;

&lt;h3&gt;2. Add New class library with a name ContentTypeHttpModule&lt;/h3&gt;

&lt;p&gt;The reason for this is no matter how you specify the content-type of your ajax call ASP.NET send the request with Content-Type text/xml; charset=utf-8 this is &lt;a href="http://weblogs.asp.net/scottgu/archive/2007/04/04/json-hijacking-and-how-asp-net-ajax-1-0-mitigates-these-attacks.aspx"&gt;security feature explained here by ScottGu&lt;/a&gt;&amp;#160;&lt;/p&gt;

&lt;h3&gt;3. Add the following code to your Class (&lt;a href="http://elegantcode.com/2008/12/02/calling-remote-aspnet-web-services-from-jquery/"&gt;Code by Jason&lt;/a&gt; i just did a simple modification)&lt;/h3&gt;

&lt;pre class="code"&gt;&lt;span style="color:blue;"&gt;using &lt;/span&gt;System;
&lt;span style="color:blue;"&gt;using &lt;/span&gt;System.Collections.Generic;
&lt;span style="color:blue;"&gt;using &lt;/span&gt;System.IO;
&lt;span style="color:blue;"&gt;using &lt;/span&gt;System.Linq;
&lt;span style="color:blue;"&gt;using &lt;/span&gt;System.Text;
&lt;span style="color:blue;"&gt;using &lt;/span&gt;System.Web;

&lt;span style="color:blue;"&gt;namespace &lt;/span&gt;ContentTypeHttpModule
{
    &lt;span style="color:blue;"&gt;public class &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;ContentTypeHttpModule &lt;/span&gt;: &lt;span style="color:#2b91af;"&gt;IHttpModule
    &lt;/span&gt;{
        &lt;span style="color:blue;"&gt;private const string &lt;/span&gt;JSON_CONTENT_TYPE = &lt;span style="color:#a31515;"&gt;&amp;quot;application/json; charset=utf-8&amp;quot;&lt;/span&gt;;

        &lt;span style="color:blue;"&gt;#region &lt;/span&gt;IHttpModule Members
        &lt;span style="color:blue;"&gt;public void &lt;/span&gt;Dispose()
        {
        }

        &lt;span style="color:blue;"&gt;public void &lt;/span&gt;Init(&lt;span style="color:#2b91af;"&gt;HttpApplication &lt;/span&gt;app)
        {
            app.BeginRequest += OnBeginRequest;
            app.ReleaseRequestState += OnReleaseRequestState;
        }
        &lt;span style="color:blue;"&gt;#endregion

        public void &lt;/span&gt;OnBeginRequest(&lt;span style="color:blue;"&gt;object &lt;/span&gt;sender, &lt;span style="color:#2b91af;"&gt;EventArgs &lt;/span&gt;e)
        {
            &lt;span style="color:#2b91af;"&gt;HttpApplication &lt;/span&gt;app = (&lt;span style="color:#2b91af;"&gt;HttpApplication&lt;/span&gt;)sender;
            &lt;span style="color:#2b91af;"&gt;HttpRequest &lt;/span&gt;resquest = app.Request;
            &lt;span style="color:blue;"&gt;if &lt;/span&gt;(!resquest.Url.AbsolutePath.Contains(&lt;span style="color:#a31515;"&gt;&amp;quot;JSONP-EndPoint.asmx&amp;quot;&lt;/span&gt;)) &lt;span style="color:blue;"&gt;return&lt;/span&gt;;

            &lt;span style="color:blue;"&gt;if &lt;/span&gt;(&lt;span style="color:blue;"&gt;string&lt;/span&gt;.IsNullOrEmpty(app.Context.Request.ContentType))
            {
                app.Context.Request.ContentType = JSON_CONTENT_TYPE;
            }
        }

        &lt;span style="color:blue;"&gt;public void &lt;/span&gt;OnReleaseRequestState(&lt;span style="color:blue;"&gt;object &lt;/span&gt;sender, &lt;span style="color:#2b91af;"&gt;EventArgs &lt;/span&gt;e)
        {
            &lt;span style="color:#2b91af;"&gt;HttpApplication &lt;/span&gt;app = (&lt;span style="color:#2b91af;"&gt;HttpApplication&lt;/span&gt;)sender;
            &lt;span style="color:#2b91af;"&gt;HttpResponse &lt;/span&gt;response = app.Response;
            &lt;span style="color:blue;"&gt;if &lt;/span&gt;(app.Context.Request.ContentType != JSON_CONTENT_TYPE) &lt;span style="color:blue;"&gt;return&lt;/span&gt;;

            response.Filter = &lt;span style="color:blue;"&gt;new &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;JsonResponseFilter&lt;/span&gt;(response.Filter);
        }
    }

    &lt;span style="color:blue;"&gt;public class &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;JsonResponseFilter &lt;/span&gt;: &lt;span style="color:#2b91af;"&gt;Stream
    &lt;/span&gt;{
        &lt;span style="color:blue;"&gt;private readonly &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;Stream &lt;/span&gt;_responseStream;
        &lt;span style="color:blue;"&gt;private long &lt;/span&gt;_position;

        &lt;span style="color:blue;"&gt;public &lt;/span&gt;JsonResponseFilter(&lt;span style="color:#2b91af;"&gt;Stream &lt;/span&gt;responseStream)
        {
            _responseStream = responseStream;
        }

        &lt;span style="color:blue;"&gt;public override bool &lt;/span&gt;CanRead { &lt;span style="color:blue;"&gt;get &lt;/span&gt;{ &lt;span style="color:blue;"&gt;return true&lt;/span&gt;; } }

        &lt;span style="color:blue;"&gt;public override bool &lt;/span&gt;CanSeek { &lt;span style="color:blue;"&gt;get &lt;/span&gt;{ &lt;span style="color:blue;"&gt;return true&lt;/span&gt;; } }

        &lt;span style="color:blue;"&gt;public override bool &lt;/span&gt;CanWrite { &lt;span style="color:blue;"&gt;get &lt;/span&gt;{ &lt;span style="color:blue;"&gt;return true&lt;/span&gt;; } }

        &lt;span style="color:blue;"&gt;public override long &lt;/span&gt;Length { &lt;span style="color:blue;"&gt;get &lt;/span&gt;{ &lt;span style="color:blue;"&gt;return &lt;/span&gt;0; } }

        &lt;span style="color:blue;"&gt;public override long &lt;/span&gt;Position { &lt;span style="color:blue;"&gt;get &lt;/span&gt;{ &lt;span style="color:blue;"&gt;return &lt;/span&gt;_position; } &lt;span style="color:blue;"&gt;set &lt;/span&gt;{ _position = &lt;span style="color:blue;"&gt;value&lt;/span&gt;; } }

        &lt;span style="color:blue;"&gt;public override void &lt;/span&gt;Write(&lt;span style="color:blue;"&gt;byte&lt;/span&gt;[] buffer, &lt;span style="color:blue;"&gt;int &lt;/span&gt;offset, &lt;span style="color:blue;"&gt;int &lt;/span&gt;count)
        {
            &lt;span style="color:blue;"&gt;string &lt;/span&gt;strBuffer = &lt;span style="color:#2b91af;"&gt;Encoding&lt;/span&gt;.UTF8.GetString(buffer, offset, count);
            strBuffer = AppendJsonpCallback(strBuffer, &lt;span style="color:#2b91af;"&gt;HttpContext&lt;/span&gt;.Current.Request);
            &lt;span style="color:blue;"&gt;byte&lt;/span&gt;[] data = &lt;span style="color:#2b91af;"&gt;Encoding&lt;/span&gt;.UTF8.GetBytes(strBuffer);
            _responseStream.Write(data, 0, data.Length);
        }

        &lt;span style="color:blue;"&gt;private string &lt;/span&gt;AppendJsonpCallback(&lt;span style="color:blue;"&gt;string &lt;/span&gt;strBuffer, &lt;span style="color:#2b91af;"&gt;HttpRequest &lt;/span&gt;request)
        {
            &lt;span style="color:blue;"&gt;return &lt;/span&gt;request.Params[&lt;span style="color:#a31515;"&gt;&amp;quot;callback&amp;quot;&lt;/span&gt;] +&lt;span style="color:#a31515;"&gt;&amp;quot;(&amp;quot; &lt;/span&gt;+ strBuffer + &lt;span style="color:#a31515;"&gt;&amp;quot;);&amp;quot;&lt;/span&gt;;
        }

        &lt;span style="color:blue;"&gt;public override void &lt;/span&gt;Close()
        {
            _responseStream.Close();
        }

        &lt;span style="color:blue;"&gt;public override void &lt;/span&gt;Flush()
        {
            _responseStream.Flush();
        }

        &lt;span style="color:blue;"&gt;public override long &lt;/span&gt;Seek(&lt;span style="color:blue;"&gt;long &lt;/span&gt;offset, &lt;span style="color:#2b91af;"&gt;SeekOrigin &lt;/span&gt;origin)
        {
            &lt;span style="color:blue;"&gt;return &lt;/span&gt;_responseStream.Seek(offset, origin);
        }

        &lt;span style="color:blue;"&gt;public override void &lt;/span&gt;SetLength(&lt;span style="color:blue;"&gt;long &lt;/span&gt;length)
        {
            _responseStream.SetLength(length);
        }

        &lt;span style="color:blue;"&gt;public override int &lt;/span&gt;Read(&lt;span style="color:blue;"&gt;byte&lt;/span&gt;[] buffer, &lt;span style="color:blue;"&gt;int &lt;/span&gt;offset, &lt;span style="color:blue;"&gt;int &lt;/span&gt;count)
        {
            &lt;span style="color:blue;"&gt;return &lt;/span&gt;_responseStream.Read(buffer, offset, count);
        }
    }
}&lt;/pre&gt;

&lt;h3&gt;4. Register the HttpModule in the service project&lt;/h3&gt;

&lt;blockquote&gt;
  &lt;p&gt;4.1 Add referance to the HttpModule assembly to the service project&lt;/p&gt;

  &lt;p&gt;4.2 Add this code to web.config to register the module&lt;/p&gt;

  &lt;p&gt;&amp;lt;add name=&amp;quot;ContentTypeHttpModule&amp;quot; 
    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; type=&amp;quot;ContentTypeHttpModule.ContentTypeHttpModule, ContentTypeHttpModule&amp;quot; /&amp;gt;&lt;/p&gt;

  &lt;p&gt;This goes under system.web / httpmodules section&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;5. Add a web project for testing the application&lt;/h3&gt;

&lt;blockquote&gt;
  &lt;p&gt;5.1 add the following libs&lt;/p&gt;

  &lt;p&gt;&lt;em&gt;jquery-1.3.1.js&lt;/em&gt;&lt;/p&gt;

  &lt;p&gt;&lt;em&gt;json2.js&lt;/em&gt;&lt;/p&gt;

  &lt;p&gt;5.2 add new script file caller.js&lt;/p&gt;

  &lt;pre class="code"&gt;&lt;span style="color:blue;"&gt;function &lt;/span&gt;test() {
    $.ajax({ url: &lt;span style="color:#a31515;"&gt;&amp;quot;http://localhost:1690/JSONP-EndPoint.asmx/Sum&amp;quot;&lt;/span&gt;,
    data: { x: JSON.stringify(&lt;span style="color:#a31515;"&gt;&amp;quot;Now i am getting jsop string&amp;quot;&lt;/span&gt;), y: JSON.stringify(&lt;span style="color:#a31515;"&gt;&amp;quot;2nd param&amp;quot;&lt;/span&gt;) },
        dataType: &lt;span style="color:#a31515;"&gt;&amp;quot;jsonp&amp;quot;&lt;/span&gt;,
        success: &lt;span style="color:blue;"&gt;function&lt;/span&gt;(json) {
            alert(json.d);
        },
        error: &lt;span style="color:blue;"&gt;function&lt;/span&gt;() {
            alert(&lt;span style="color:#a31515;"&gt;&amp;quot;Hit error fn!&amp;quot;&lt;/span&gt;);
        }
    });
}&lt;/pre&gt;

  &lt;pre class="code"&gt;5.3 Add referances to &lt;em&gt;jquery-1.3.1.js&lt;/em&gt; and &lt;em&gt;json2.js&lt;/em&gt;&lt;/pre&gt;

  &lt;pre class="code"&gt;5.4 Add Default.aspx page with input button that has onclick=”return test();”&lt;/pre&gt;
&lt;/blockquote&gt;

&lt;h3&gt;6. Remarks&lt;/h3&gt;

&lt;blockquote&gt;
  &lt;p&gt;6.1 I use the JSON.stringify function to serialize the string data parameters.&lt;/p&gt;

  &lt;p&gt;6.2 .d is a security features on ASP.NET 3.5&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;&lt;a href="http://bloggingabout.net/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adelkhalil/2146.JSONP_2D00_Prototype.zip"&gt;Download the code&lt;/a&gt;&lt;/h2&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=482056" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term=".NET" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/.NET/default.aspx" /><category term="Web Services" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Web+Services/default.aspx" /><category term="ASP.NET" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/ASP.NET/default.aspx" /><category term="JavaScript" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/JavaScript/default.aspx" /><category term="jQuery" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/jQuery/default.aspx" /><category term="JSON" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/JSON/default.aspx" /><category term="JSONP" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/JSONP/default.aspx" /></entry><entry><title>Subscribed to your own blog :D ?</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2009/01/25/subscribed-to-your-own-blog-d.aspx" /><id>/blogs/adelkhalil/archive/2009/01/25/subscribed-to-your-own-blog-d.aspx</id><published>2009-01-25T16:59:57Z</published><updated>2009-01-25T16:59:57Z</updated><content type="html">&lt;p&gt;Are you? Why ? &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=481070" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term="Funny" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Funny/default.aspx" /><category term="Human Factor" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Human+Factor/default.aspx" /></entry><entry><title>All my kids will program on Boku</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2008/12/10/all-my-kids-will-program-on-boku.aspx" /><id>/blogs/adelkhalil/archive/2008/12/10/all-my-kids-will-program-on-boku.aspx</id><published>2008-12-10T16:38:56Z</published><updated>2008-12-10T16:38:56Z</updated><content type="html">&lt;p&gt;One day, i will FORCE :D all my kids to program on Boku like Chris kids do.&lt;/p&gt;  &lt;p&gt;&lt;a title="http://devlicio.us/blogs/christopher_bennage/archive/2008/12/09/an-early-start.aspx" href="http://devlicio.us/blogs/christopher_bennage/archive/2008/12/09/an-early-start.aspx"&gt;http://devlicio.us/blogs/christopher_bennage/archive/2008/12/09/an-early-start.aspx&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=477607" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term="Community News" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Community+News/default.aspx" /><category term="Funny" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Funny/default.aspx" /><category term="Personal" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Personal/default.aspx" /></entry><entry><title>Full Time Software Engineers Needed</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2008/12/03/full-time-software-engineers-needed.aspx" /><id>/blogs/adelkhalil/archive/2008/12/03/full-time-software-engineers-needed.aspx</id><published>2008-12-02T23:07:41Z</published><updated>2008-12-02T23:07:41Z</updated><content type="html">&lt;p&gt;Just graduated with IT related degree ?&lt;/p&gt;  &lt;p&gt;Are you creative, motivated and talented?&lt;/p&gt;  &lt;p&gt;Excited by developing new applications that really make a difference?&lt;/p&gt;  &lt;p&gt;Want to tackle new challenges?&lt;/p&gt;  &lt;p&gt;kinematechs is hiring freshman developers&lt;/p&gt;  &lt;p&gt;Great environment, great people…&lt;/p&gt;  &lt;p&gt;apply &lt;a href="http://jobs.kinematechs.com"&gt;jobs.kinematechs.com&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;About Kinematechs®&lt;/p&gt;  &lt;p&gt;Vision&lt;/p&gt;  &lt;p&gt;Provide the framework and infra-structure for incubating new ideas and innovative projects in the field of Information and Computer Technology (ICT).&lt;/p&gt;  &lt;p&gt;Mission&lt;/p&gt;  &lt;p&gt;Provide creative and unconventional solutions to the most challenging ICT problems. &lt;/p&gt;  &lt;p&gt;Develop software that implements these solutions . &lt;/p&gt;  &lt;p&gt;Research and develop new technologies that will come to the benefit of the industry as a whole. &lt;/p&gt;  &lt;p&gt;Values&lt;/p&gt;  &lt;p&gt;Our people are our most important asset . &lt;/p&gt;  &lt;p&gt;Quality is not a luxury, it is mandatory and must be reflected in everything we do. &lt;/p&gt;  &lt;p&gt;We will always thrive to be creative and original in whatever we do. &lt;/p&gt;  &lt;p&gt;Under all circumstances, Kinematechs® will always conduct business professionally and ethically. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=477243" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term="Community News" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Community+News/default.aspx" /><category term="Career" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Career/default.aspx" /></entry><entry><title>Milk Offers and Notice Periods</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2008/12/02/milk-offers-and-notice-periods.aspx" /><id>/blogs/adelkhalil/archive/2008/12/02/milk-offers-and-notice-periods.aspx</id><published>2008-12-02T10:23:28Z</published><updated>2008-12-02T10:23:28Z</updated><content type="html">&lt;p&gt;Joel Spolsky talked in his recent post about exploding job offers (&lt;a title="http://www.joelonsoftware.com/items/2008/11/26.html" href="http://www.joelonsoftware.com/items/2008/11/26.html"&gt;http://www.joelonsoftware.com/items/2008/11/26.html&lt;/a&gt;), where the recruiter says that you have to response to the offer with in fixed period of time, that was what happened to me exactly couple of month back, were the offer had expiration date of 4 days :)&lt;/p&gt;  &lt;p&gt;Their execute is that they can fill the position with someone else, as soon as possible.&lt;/p&gt;  &lt;p&gt;Another thing I&amp;#39;ve noticed is the notice period thingy that you found in most contracts, which says that before you decide to leave your job you should tell them 2 month prior.&lt;/p&gt;  &lt;p&gt;Now there is two problems here first, if i come to the situation that i hate the job, my boss and everything about the company and rather to stay home jobless and not to wake up for the next day to go to work, i should feel that 2 month prior to it happening,&lt;/p&gt;  &lt;p&gt;seconded, if i was hunting for a job and got an offer, which company will wait for me 2 months so i can join them, there is but very few.&lt;/p&gt;  &lt;p&gt;last thing, what if I&amp;#39;m get laid off, would they give me even one month notice.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=477229" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term="Everyday Life" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Everyday+Life/default.aspx" /><category term="Career" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Career/default.aspx" /><category term="Human Factor" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Human+Factor/default.aspx" /></entry><entry><title>Neat feature in Foxit Reader 2.3</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2008/10/31/neat-feature-in-foxit-reader-2-3.aspx" /><id>/blogs/adelkhalil/archive/2008/10/31/neat-feature-in-foxit-reader-2-3.aspx</id><published>2008-10-30T22:11:33Z</published><updated>2008-10-30T22:11:33Z</updated><content type="html">&lt;p&gt;So Foxit Reader is a replacement for Acrobat Reader, it’s light, can be stand alone, and has a super fast launching time and FREE. since i tried Foxit Reader i had no single Acrobat Reader installation.&lt;/p&gt;  &lt;p&gt;Today i discovered a neat feature, if you closed Foxit Reader while you viewing PDF document, when you come back and open the same document it remembers the page you were reading not only that but the exact position of the scrolls so it will be arranged for the exact paragraph to resume your reading, very handy.&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.foxitsoftware.com/pdf/rd_intro.php" href="http://www.foxitsoftware.com/pdf/rd_intro.php"&gt;http://www.foxitsoftware.com/pdf/rd_intro.php&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=476386" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term="Utilities" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Utilities/default.aspx" /></entry><entry><title>.NET got new logo</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2008/10/29/net-got-new-logo.aspx" /><id>/blogs/adelkhalil/archive/2008/10/29/net-got-new-logo.aspx</id><published>2008-10-28T23:58:53Z</published><updated>2008-10-28T23:58:53Z</updated><content type="html">&lt;p&gt;.NET got brand new logo, I kind liked the old one more… anyway…&lt;/p&gt;  &lt;p&gt;&lt;img src="http://blogs.msdn.com/blogfiles/msmossyblog/WindowsLiveWriter/Embracethenew.NETLogo_144D2/image_3.png" alt="" /&gt; &lt;/p&gt;  &lt;p&gt;&lt;a title="http://blogs.msdn.com/msmossyblog/archive/2008/10/25/embrace-the-new-net-logo.aspx" href="http://blogs.msdn.com/msmossyblog/archive/2008/10/25/embrace-the-new-net-logo.aspx"&gt;http://blogs.msdn.com/msmossyblog/archive/2008/10/25/embrace-the-new-net-logo.aspx&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=476312" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term=".NET" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/.NET/default.aspx" /><category term="Community News" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Community+News/default.aspx" /><category term="Microsoft" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Microsoft/default.aspx" /></entry><entry><title>TechCrunch started a layoffs counter</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2008/10/24/techcrunch-started-a-layoffs-counter.aspx" /><id>/blogs/adelkhalil/archive/2008/10/24/techcrunch-started-a-layoffs-counter.aspx</id><published>2008-10-24T00:56:26Z</published><updated>2008-10-24T00:56:26Z</updated><content type="html">&lt;p&gt;In respond to the latest economy crisis TechCrunch started a layoffs counter, Companies like eBay, Yahoo, nVidia and many more have layoffs exceeded 3000+ employee. &lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.techcrunch.com/layoffs/" href="http://www.techcrunch.com/layoffs/"&gt;http://www.techcrunch.com/layoffs/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Is the current crisis affect Egypt’s outsource spots?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=476031" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term="Community News" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Community+News/default.aspx" /></entry><entry><title>New Search Engine “Cuil” in Town</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2008/10/15/new-search-engine-cuil-in-town.aspx" /><id>/blogs/adelkhalil/archive/2008/10/15/new-search-engine-cuil-in-town.aspx</id><published>2008-10-15T16:37:41Z</published><updated>2008-10-15T16:37:41Z</updated><content type="html">&lt;p&gt;Mohamed Tanna refers me via Facebook link to this promising search engine, i love the search result layout by the way simple and brilliant.&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.cuil.com" href="http://www.cuil.com"&gt;http://www.cuil.com&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=475592" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term="Community News" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Community+News/default.aspx" /></entry><entry><title>5 MB IBM Hard Disk, 1956</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2008/10/05/5-mb-ibm-hard-disk-1956.aspx" /><id>/blogs/adelkhalil/archive/2008/10/05/5-mb-ibm-hard-disk-1956.aspx</id><published>2008-10-05T04:49:15Z</published><updated>2008-10-05T04:49:15Z</updated><content type="html">&lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adelkhalil/n634330188_5F00_1817668_5F00_2669_5F00_Z_2B00_lWOw.jpg"&gt;&lt;img style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px;" title="n634330188_1817668_2669" border="0" alt="n634330188_1817668_2669" src="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adelkhalil/n634330188_5F00_1817668_5F00_2669_5F00_thumb_5F00_u7PvnQ.jpg" width="195" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=475121" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term="Funny" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Funny/default.aspx" /></entry><entry><title>Finally Microsoft Shipping Open Source</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2008/09/29/finally-microsoft-shipping-open-source.aspx" /><id>/blogs/adelkhalil/archive/2008/09/29/finally-microsoft-shipping-open-source.aspx</id><published>2008-09-29T00:53:16Z</published><updated>2008-09-29T00:53:16Z</updated><content type="html">&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;This is awesome, Microsoft finally decided to ship open source software, jQuery will be shipped with ASP.NET MVC and will be supported as any Microsoft product, also will be shipped with Visual Studio on the long run, this is a bold move&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.hanselman.com/blog/jQueryToShipWithASPNETMVCAndVisualStudio.aspx" href="http://www.hanselman.com/blog/jQueryToShipWithASPNETMVCAndVisualStudio.aspx"&gt;http://www.hanselman.com/blog/jQueryToShipWithASPNETMVCAndVisualStudio.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx" href="http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx"&gt;http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=474878" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term="ASP.NET" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/ASP.NET/default.aspx" /><category term="Open Source" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Open+Source/default.aspx" /><category term="JavaScript" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/JavaScript/default.aspx" /><category term="jQuery" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/jQuery/default.aspx" /></entry><entry><title>Windows Live Messenger 2009 Build 14.xx.xx.xx</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2008/09/27/windows-live-messenger-2009-build-14-xx-xx-xx.aspx" /><id>/blogs/adelkhalil/archive/2008/09/27/windows-live-messenger-2009-build-14-xx-xx-xx.aspx</id><published>2008-09-27T01:30:36Z</published><updated>2008-09-27T01:30:36Z</updated><content type="html">&lt;p&gt;WLM 2009 leaked, if you tried to install it on Windows Server 2008 it may not work and return error message saying that the service is no available, if you do so and couldn’t get rid of the new installation remove the bits manually and use &lt;a href="http://tinyurl.com/42ul9"&gt;Windows Installer Cleanup tool&lt;/a&gt; to get rid of the entry on the Windows Installer log.&amp;#160; &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=474851" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term="Microsoft" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Microsoft/default.aspx" /><category term="Windows Live Messenger" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Windows+Live+Messenger/default.aspx" /></entry><entry><title>Google Mobile Platform: Android</title><link rel="alternate" type="text/html" href="/blogs/adelkhalil/archive/2008/09/27/google-mobile-platform-android.aspx" /><id>/blogs/adelkhalil/archive/2008/09/27/google-mobile-platform-android.aspx</id><published>2008-09-26T23:54:41Z</published><updated>2008-09-26T23:54:41Z</updated><content type="html">&lt;p&gt;&lt;img src="http://code.google.com/android/images/android_adc.gif" alt="" /&gt; &lt;/p&gt;  &lt;p&gt;The &lt;a href="http://code.google.com/android/what-is-android.html"&gt;Android platform&lt;/a&gt; is a software stack for mobile devices including an operating system, middleware and key applications. Developers can create applications for the platform using the Android SDK. Applications are written using the Java programming language and run on Dalvik, a custom virtual machine designed for embedded use, which runs on top of a Linux kernel.&lt;/p&gt;  &lt;p&gt;There is a SDK at &lt;a href="http://code.google.com/android/documentation.html"&gt;Andriod Website&lt;/a&gt; the two features that interest me is how application is created equal so you can create your own dialer for example and replace the existing one, as well as the multitasking nature of the platform.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=474847" width="1" height="1"&gt;</content><author><name>Adel Khalil</name><uri>http://bloggingabout.net/members/Adel-Khalil/default.aspx</uri></author><category term="Community News" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Community+News/default.aspx" /><category term="Google" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Google/default.aspx" /><category term="Mobile Applications" scheme="http://bloggingabout.net/blogs/adelkhalil/archive/tags/Mobile+Applications/default.aspx" /></entry></feed>