Month: April 2014

Enterprise Mode for Internet Explorer 11

“I used to access to my internal portal everyday and now is not loading properly, how can I go back to IE8?”

This has been one of the most common complains about the usage of Internet Explorer 10 and 11 on Windows 8 for the last year, and the truth is that we have had some friction between the “Legacy Compatibility” and the “Modern Compatibility”.

Your old websites which are using hard-coded Active X controls, old scripting languages and remarkable plug-ins, heroes in another era, are struggling with the new browsers that are based on new technologies, are touch friendly and use more powerful and slightly different script engines. But, you want to take the full advantage of the new technologies.

That’s why we just brought the “Enterprise Mode” for IE 11.


Open your Internet Explorer and press “Alt”, go to Tools and there you will find the Enterprise Mode, easy as that.


According to Net Applications, Internet Explorer 8 still has more than 20% of the desktop browser market share; despite the fact that IE9, IE10, and IE11 have superseded IE8, many customers still rely on Internet Explorer 8 to run their business.

By providing better backward compatibility for Internet Explorer 8, Internet Explorer 11 with Enterprise Mode is intended to help break this dependency and provide the best of both worlds: A modern, up-to-date browser that helps customers extend their existing investments in older Web apps.

What does Enterprise Mode provide in terms of compatibility?

  • User agent string differences: We have replicated the original IE8 user agent string so Enterprise Mode will make work sites that fail if they can’t recognize IE8 as the browser.
  • Active X controls and other binaries
  • Deprecated functionality, such as CSS Expressions
  • Pre-caching and pre-rendering

Also, why move to IE11 is a better choice? Performance

JavaScript performance in enterprise mode is slightly slower than IE11 but still much faster than IE8.

So now you don’t have an excuse for don’t move to a modern browser anymore 🙂

Windows Rebuild for Developers Kuwait 29th April

Did you miss the Build 2014 Event?

Come and see what’s new for developers in the Microsoft ecosystem. We are bringing to you all the news from the Build 2014 event with important updates like Windows Phone 8.1, Universal Apps Development, Microsoft Azure new services, Visual Studio 2013 Update 2, Windows 8.1 Update, Xamarin integration, WinJS for multiple platforms and much more. Don’t miss this opportunity to know more about how we are transforming into a devices and services company and what is our future roadmap.



Address: Holiday Inn Salmiya . Al Amwaj Ballroom
Al blajat St.Kuwait City Kuwait

Speakers: Rami Sarieddine, Eduardo Ortega (Microsoft Gulf Tecnical Evangelists)

Register here:

Creating documentation in C# using Visual Studio and Sandcastle

Imagine that you are creating an awesome application, let’s say for example for Windows Phone, but you didn’t pay so much attention to the initial documentation of your project, I mean, not very complete UML diagrams, no proper documentation on the entities definition or just, it’s a very short project where documentation is trivial but at least you want to make sure that if anyone wants to continue with this project, you will provide a proper documentation for the hand over.

Generated static printed documents no long work in an era when technology changes many times a year.

  • API documents has been replaced by IntelliSense and Go To Definition
  • Designs can be documented by  XML comments better than Word documents.
  • Books were replaced by Blogs and search engines

An easy way to create your own documentation with an elegant style (see CHM help documents from Microsoft documentation) is through the documentation options in Visual Studio + a great tool to export your code comments and documentation into a readable format.

Let’s split this into two parts.

1) Document your code

In Visual C# you can create documentation for your code by including XML elements in special comment fields (indicated by triple slashes) in the source code directly before the code block to which the comments refer, for example.

/// <summary>
///  This class performs an important function.
/// </summary>
public class MyClass{}

When you compile with the /doc option, the compiler will search for all XML tags in the source code and create an XML documentation file. To create the final documentation based on the compiler-generated file, you can create a custom tool or use a tool such as Sandcastle.

Another example:

/// <summary> 
/// Class level summary documentation goes here.</summary> 
/// <remarks> 
/// Longer comments can be associated with a type or member through 
/// the remarks tag.</remarks> 
public class TestClass : TestInterface
    /// <summary> 
    /// Store for the name property.</summary> 
    private string _name = null;

    /// <summary> 
    /// The class constructor. </summary> 
    public TestClass()
        // TODO: Add Constructor Logic here.

Now, that you now how to comment your code properly, you have to enable one option on the compiler.

Go to the Project Properties –> Build –> Output section –> Enable XML documentation file. See here:


After that build the project and get the generated XML file for the second step.

2) Generate a proper documentation

Now is time to generate a readable documentation through the XML file generated, for that SandCastle is our hero.

If you want to pull all the IntelliSense information out into HTML or compiled Html Help, your going to need some help.  Microsoft has Sand Castle to build those documents.

Let’s see what you need to create these CHM files:

  1. Download and Install Sand Castle via the MSI.
  2. Download and Install the Sand Castle Help File Builder (SHFB) MSI by Eric Woodruff
  3. Download and Install / Patch the Sand Castle Styles
  4. Run SHFB
  5. Add documentation sources (csproj or dll)
  6. Add references (csproj or dll)
  7. Set the help file format and other SHFB options (I recommend using the MemberName naming method to get html links with names instead of Guids)
  8. Run SHFB build, wait and done!

So, once you have Sand Castle Help File Builder GUI installed, you just have to add the references to the DLL and the references to the XML previously generated file and build the solution

image image

It will take time to get the final build but it worths it 🙂

– May the code be with you –


SandCastle Help File Builder:


XML Documentation Comments:

SurroundWeb, the evolution of IllumiRoom

Probably you remember IllumiRoom, this Microsoft project that projects images beyond your TV.

As you remember, this is a system though to create an immersive experience for XBOX 360 that requires a Kinect an a Projector.
In the end is an Augmented Reality system that extends your experience to the whole room, just, AMAZING.

IllumiRoom de Microsoft se convierte en SurroundWeb

It’s viability was complex as the cost is high, Kinect, Xbox, big TV, great projector,… the thing is that finally IllumiRoom just brought SurrondWeb, a new project from Microsoft Research that is based on the first one.

SurroundWeb is feed by a set of depth cameras and projectors that generate kind of browser 3D. Let’s take a look to the next demo to have an idea how far we can go with this new project.

IllumiRoom de Microsoft se convierte en SurroundWeb

Still is a project a bit expensive to implement at home but nothing is expensive when you are passionate about technology 🙂

Enjoy the video and kindly find more information in the next links:

Windows Phone Dev Center Changes + Credit card validation no longer required

After Build we have had many announcements regarding to the Windows Store and the Store Dev Centers. It is not the objective of this discussion to talk about the improvements on the Windows and Windows Phone Store so before go to the dev side let’s just say that now you have the opportunity to build once and deploy for both stores thanks to Universal Apps, and not only that, buy ONCE and have the app on both Operating Systems at no extra cost ^_^

Let’s go through the two major changes on the Store Dev accounts:

1) Credit card validation no longer required for the registration process

This is something that mostly students were looking for years, to be able to create their own developer account without the need to get a credit card for the account verification (remember that for Students the account is FREE thanks to the BizSpark program but requires to verify your identity with a credit card).

Also whenever 1 full year old comes to your account, in the renewal you will have same options for it + now we are enabling PayPal as a renewal or even registration payment for the Windows Store (in markets where PayPal is currently supported).

2) New feedback features: Microsoft is slowly rolling out a program whereby developers can comment on your reviews of their handiwork so you would soon be able to respond to user reviews of their apps and games. Here a funny demonstration


As developer you will receive these kind of notifications where you will be able to control what’s going on with your “open cases”


But not only that, is not only for debating personal opinions about the app, Windows Phone users are encouraged to report any questionable developer response via the reporting link in the “details” section of the app’s description:

clip_image002   clip_image004

As a user: remember that your feedback can make the applications you own better as in the end is what you want when you purchase a game or an app.
As a developer: remember that your users own your app because they think that is cool and they like it, they use it, don’t disappoint them and provide them the best quality, the best performance and regular updates.

3) Linking Windows Store and Windows Phone apps to create a universal Windows app

halo universal

Tired to pay twice for the same app? Now with Universal Apps, ‘get once and download for all compatible Windows devices’ customer experience, which we expect to increase both paid and free app downloads across device types.

Also, if you are integrating in-app purchases in your apps, this linked app experience extends your durables and consumables to be used in both stores using the same identifier.

4) App name reservation

Developers now can reserve names for new Windows Phone apps for up to 12 months in advance of release

5) Consolidated price tiers

We have simplified the pricing which is applicable for paid apps and in-app purchasing and expands Windows developer opportunity with the addition of US$0.99 and $1.39 price tiers to Windows Store.

6) Consistent certification policies

7) Reduced certification times: x10 faster!

There it is, we have reduced the app certification workflow time where in most cases the reduction comes to few hours vs. few days (previously).


  1. Promotional pricing
  2. Pre-submission validation checks
  3. Touch-enabled device targeting


As you can see there are GREAT improvements and changes on both Windows and Windows Phone Store, everything pointing to the same direction, build once, deploy everywhere. You have no excuse to start deploying for Windows Phone and mark your own revenue model and success on the Windows Store!

Happy submission and – May the code be with you –


Starting with Universal Apps on Visual Studio 2013

As probably so many of you are still excited after Build Event, this is the best moment to start practicing what we’ve learnt from the online sessions.

Today I’m going to start creating my first Universal App, so let’s go step by step.


What is a universal app? In few words, an application that you develop once and you can deploy on Windows, Windows Phone or XBOX. The goal is to maximize the reuse of code.


Let’s create our first app:

1/ First, update your Visual Studio 2013 to the Update 2 RC:


2/ Open Visual Studio (recommended Ultimate if you want to have the full set of cool tools and you want to do good testing) and select Store Apps –> Universal Apps.

The beauty of Universal apps is that you will leverage your code on only one runtime (WinRT) that is the same for Windows 8.1 or Windows Phone 8.1 devices.


If you remember from Build, when you create a Windows Phone application you can use the Silverlight runtime (version 8.0 or 8.1) or you can use WinRT runtime (the one from Universal Apps). The WinRT runtime enables you to create one application that will run on Windows, Windows Phone or even Xbox One. You only have to take  care about the App Size (screen size) not the device resolution.


Said that, we are finding one framework (XAML) to develop an app for multiple platforms. On this version we have a API convergence of 90%, still there is a small set not converget yet, that are Phone features only available in Silverlight such:

– Lenses Support
– VOIP Suport
– Camera Capture Task
– Clipboard APIs
– Lock Screen Wallpaper API


Coming back to the main steps.

3) On the Windows 8.1 project, open the MainPage.xaml and drag and drop the DatePicker and TimePicker into the designer like this:



4) Move the MainPage.xaml to the Shared project and delete the MainPage.xaml that is inside of your WP8.1 project, so your solution has to look like this:


So now all the XAML code (your UI) will be hosted in the shared project and is targeting both projects, W8.1 and WP8.1. If you open the MainPage.xaml you will find that the XAML now applies to both, you can see it just going to the designer and swapping from W8.1 to WP8.1:


The good thing is, if you run the application on Phone, you will see that indeed is the same UI, but the controls are automatically converted to Windows Phone Date and Time pickers, that are slightly different of Windows 8.1 controls 🙂



5) Adjust the UI for each device: This is sooooo cool, the problem is, if you play with this controls in one view, it will affect to the other view, and what we want is to design for Windows or Phone separately. Until I find a better solution my advice is to design the app for Windows 8.1 from the shared project and once is done, copy it to the Windows Phone project and the Windows project and delete the shared MainPage.xaml, so with that almost all the job will be done, you just have to adjust the content inside each MainPage.xaml 😉


Here you can find some steps in case you want to reuse your code from the Business Logic point of view.


Enjoy! and – May the code be with you –

Building Apps for Windows Phone 8.1 Jump Start

After 2 weeks playing with the new toys that where presented on the Build 2014 event, finally we have the official training materials available in Microsoft Virtual Academy!


If you’re an app developer who wants to design and build Windows Phone 8.1 apps using XAML and C#, don’t miss this exciting event.

The two-and-a-half day, demo-rich course, taught by experts who have years of experience developing (and writing about the process), focuses on how to create apps for Windows Phone 8.1 in Visual Studio and how to create universal app projects that share a high percentage of code and that target both Windows and Windows Phone.


Course Outline:

  • Day 1: Introduction to Windows Phone 8.1 & Building Windows Store Apps
  • Day 2: Programming Windows Phone 8.1 Platform Features
  • Day 3: Store, Universal Apps, and Silverlight


Live Event Details: April 29-May 1, 2014 – 9-5 PDT (days 1 & 2), 9-12 PDT (day 3)

Cost: Free

Audience: Developer

Prerequisites: Experienced software developers with knowledge of object-oriented design. Familiarity with C# or XAML is helpful. (No prior experience with developing Windows Phone 8 apps is required.)

Register here:


Don’t miss this opportunity and be the first on creating Universal Apps for Windows and Windows Phone.

– May the code be with you –

Build 2014 sessions announced!

Only one day left for the biggest Microsoft event of the year and our Folks from Redmond couldn’t wait until tomorrow to announce the agenda, and the only thing I can say is, “I AM SO EXCITEDDDDD!!!!!”

Let’s take a look to some of the sessions that are going to be broadcasted:

For HTML 5 developers:

HTML5 Platform from Web to Apps

What’s New in WinJS- The Road Ahead

Building a Converged Phone and PC App using HTML and JavaScript

Blending the Web with Platform Capabilities

Cutting Edge Graphics in HTML

For enthusiast developers:

The New Windows Phone Application Model

Kinect 101- Introduction to Kinect for Windows

Building Geo-Aware Apps with Maps and Geofencing

What’s New with Windows Phone Silverlight Apps!

Live Tiles Enhancements

Sequencers, Synthesizers, and Software, Oh My! Building Great Music Creation Apps for Windows St

Building Video and Audio Streaming Apps

Sensors Platform Enhancements in Windows Phone

The New Video Editing APIs for Windows Phone- Windows.Media.Editing

The Present and Future of .NET in a World of Devices and Services

Xbox Music API – Music for Every App

Take Your Solution Worldwide from the Start with Bing Translator

For dev masters:

Multitasking and Triggered Background Tasks for Windows Phone Apps

Building Great Bluetooth Apps for Windows Phone

Notification Platform Development on Windows

Dealing with Data- Storage, Roaming, and Backup on Windows and Windows Phone

Kinect for Windows Session #2

Windows Desktop Development Platform Advancements

Windows Platform- SDL Best Practices

Wrap a Mobile API around your Enterprise and take Data Offline with NoSQL on Windows Phones and…

Understanding Customer Patterns- Instrumenting an App for Telemetry and Analytics

Extend your WIndows Apps with Nokia SDKs

Rapidly Detect Application Outages with Application Insights

For lazy guys that want to make money quick:

App Studio for Windows and Windows Phone- Pre Launch Preview

For optimizers:

Developing Apps using the Common XAML UI Framework

What’s New for Azure Developers in Visual Studio and Azure SDK

Strategies for Developing Cross-Device Applications with Visual Studio 2013

From 4 to 40 inches- Developing Windows Applications across Multiple Form Factors

For IT Pros:

Better App Compat with Enterprise Mode for Internet Explorer 11

Windows Phone Enterprise Management

Deploying and Managing Enterprise Apps

New Security Features for Windows Phone

The New Authentication Model for Web, Mobile, and Cloud Applications

Mobile Push Notifications to Any Client with Azure Notification Hubs

What’s New in Azure Networking

Running Java and Oracle Applications on Azure

For Productivity:

Build Connected Productivity Apps

Go Mobile with C# and Xamarin

SharePoint 2013 Apps with AngularJS

Getting Started with Visual Studio Online

Tips and Tricks in Visual Studio 2013

SharePoint Power Hour – New Developer APIs and Features for Apps for SharePoint

Office Power Hour – New Developer APIs and Features for Apps for Office

Building Enterprise Social Apps with Yammer

Captivate Consumers with the OneNote API

Developing Office 365 Cloud Business Apps

Apps for Outlook Power Hour

Deep Dive into Git with Team Foundation Server

Building Cross-Platform Line of Business Apps with Mobile Services

For Gamers:

Building Your First Windows Game with Unity

Extending Xbox Experiences to Devices

Understanding the Xbox One Game Platform Built on Windows

Building Games for Windows

Innovations in High Performance 2D Graphics with DirectX Across Windows and Windows Phone

Direct3D 12 API Preview

DirectX Graphics Development with Visual Studio 2013

For Designers:

What about XAML UI and Controls-

Tips and Tricks for Designing a Great Accessibility Experience for Your App

Strategies for World Domination- Design Research Advice for Developers

For investors:

Maximizing Revenue for Phone, Tablet and PC Apps in the Windows Store

Windows and the Internet of Things

Windows Phone and Windows- Store and Dev Center

Respecting Your Investments- How to Leverage Your Existing Code In a New Windows Runtime LOB App

Windows Store, Dev Center, Monetization and Ads- A Panel Discussion

Promote Your App in Search Results

These are only some of them , not all, so you can check them all following the next links:

  • Watch Live — Starting April 2 on Channel 9 Go →
  • Session Listing – Browse the sessions and build your own schedule Go →
  • Session Recordings — Available 24-48 hours after each session concludes Go →
  • Session Evaluations — Attended or watched a session? Tell us what you thought about it Go →

    Now you have an excuse to ask for two days off at work and stay at home following the event online.

    Enjoy it!

    – May the code be with you –