Tuesday, July 28, 2015

Get started with Azure Machine learning for free

If you would like to start building Azure machine learning experiments on Micosoft Azure, You will be able to start getting started with Microsoft free offer for Azure feature-sepcific offer where you can work on Azure ML without a need for Azure subscriptions.

All what you need is a Microsoft account to login, once you got that, visit below link to start experimenting Azure ML.

If you don't have a Microsoft account (Live, Hotmail, Outlook), here you can sign up for free:

Update: Due to a recent update in Azure ML site,You will be able to use Azure Studio as a guest and you don't need to login or create a Microsoft account.
We recommend you to create a Microsoft account to store all your experiments under you account to be available everywhere.

Enjoy Azure ML!

Thursday, July 16, 2015

Getting Started with Cross Platform Mobile Development using Cordova

Getting started with cross platform mobile apps using cordova from Mostafa Elzoghbi

Sample Demos:

Yesterday, I had the opportunity to present a session about cross platform mobile development using Cordova at Microsoft Reston.

This blog post is to share my presentation and my sample demos to everyone!

Hope this helps.

Tuesday, July 14, 2015

Free Microsoft eBooks

Hi All,

I'd like to share with all my blog readers and followers the largest collection of free ebooks from Microsoft.

Great resources in Microsoft Azure, Machine Learning, Azure Web Apps, Microsoft SharePoint, Dynamics CRM, Office 365, Cloud Apps, SQL Azure, SQL Server, and much more.

Refresh your skills set and download as much as you can:



Wednesday, July 08, 2015

How to configure Cordova App to use AngularJS


In this blog post i am showing how to Add AngularJS library to an existing Cordova App in Visual Studio 2015. The post shows some tips on organizing your JS files into Crodova App project template.

Since i didn't find an example on how to incorporate AngularJS library in Cordova App with out the need to collect various JS files and place them in proper folder structure that works with Cordova App project template. This blog will guide in a step by step how to incorporate AngularJS in Crodova App using VS 2015.

What are we doing ?
Since the AngularJS framework helps developers to follow MVC pattern. We will be creating an out-of-the box Cordova application, then we will add a controller js file and then will set a value in the controller and bind in view page.

Follow below steps to have a running Corodva App with AngularJS installed and configured!

1) Create a Crodova project in VS2015.

2) From Solution explorer window, Click on Manage NuGet Packages.
3) Search for AngularJS and add AngularJS.Core to your project.

4) All AngularJS files will be added under Scripts folder.

5) Select All AngularJS files and move it under scripts folder under www folder.

This is a best practice to include all Cordova App JS files under scripts folder, Since VS 2015 adds JS libraries under Scripts folder as a standard location, we need to move it under scripts folder under www folder.

6) Create a controllers folder  and then add MainCtrl.js file as your controller.
7) Open index.html and add a reference to angular.js and MainCtrl.js.

  <!-- AngularJs -->
    <script src="scripts/angular.min.js"></script>

    <!-- Controllers -->
    <script src="controllers/MainCtrl.js"></script>

8) Add the following code snipped in MainCtrl.js controller , which sets a value for myname in the scope.

(function () {

    angular.module('myApp', [])
    .config([function () {
        // configuration
    .run([function () {
        // Running
    .controller('MainCtrl', ['$scope', function ($scope) {
        $scope.myname = "Mostafa Elzoghbi Demo!";



9) Open up index.html and retrieve (bind) myname value from the controller; set the angularjs app name and the controller name.

<body ng-app="myApp" ng-controller="MainCtrl">
    <p>Hello, your application is ready!</p>

10) Run your project! and you will see that myname binding value from the controller.

The full demo can be downloaded from this link:


Wednesday, July 01, 2015

Learn AngularJS for free to build web and mobile apps at scale

AngluarJS is a modern JavaScript library to build enterprise web and mobile applications at scale. AngularJS is widely used JS library by all frond end and web developers worldwide in different programming languages to build scalable web and mobile applications.

AngularJS is a library backed by Google. Microsoft started to support AngularJS with great IntelliSense in VS developer tools including the following templates:

a) VS Web project templates including web forms & mvc templates.
b) VS Hybrid cross platform mobile app using Apache Cordova

Today you can start building AngularJS applications in Visual Studio 2013 and 2015.

To learn AngularJS basics before jumping into code. Microsoft offers a free course in Microsoft Virtual Academy (MVA):

This course is a great start to understand the basics of AngularJS.

Also, there is a free course on AngularJS website, here is some links to learn AngularJS:

** If you live in DC metro area,  I will be covering basics of AngularJS along with Building Cross platform mobile apps using Cordova, link to the event (7/15):

Hope this helps.

Friday, June 19, 2015

What is npm ? How to get started with npm with Visual Studio 2015

This blog post is for following audience:
a) Microsoft stack and .NET developers.
b) New developers using Apache Cordova.
c) An engineer who has not been using any open source tools in Visual Studio.

This blog post will answer the following questions:
1) What is npm ?
2) Why would i use it ?
3) How to use it ?

npm is a package manager for: JavaScript, Node, Cordova, JQuery, mobile, angular, react and other famous JavaScript libraries and frameworks.

You will use npm when you want to install any js library or framework in your Visual Studio project. For example: if you want to install node.js, Cordova js libraries or any other js library such as: ionic or react!

To get npm js package manager, you need first to install Node.Js which contains npm package manager tool.


Once you download and install the installer, you would have npm package manager tool in your system!

How to use it?
Open your command line after you installed node.js installer and type the following to install ionic framework:

npm install -g cordova ionic

Hope this helps you how to get started using npm package manager!

-- ME

Thursday, June 18, 2015

What is TypeScript? Why would i strongly recommend to use it in your next project

As all of us know, Building large applications in JavaScript is hard! It gets messy and hard to manage and test.

The Problem
Because of the nature of JavaScript, it is not "favorable & easy practice" for non JavaScript developers to write classes, modules, OOP code in an easy, clean and straight forward way.

This was the reason of the rising & popularity of JS libraries and frameworks such as: jQuery, Angular, Knockout and much more amazing js libraries.

Recently, I have been thinking to build a Hyprid mobile application using Cordova, and this open source platform helps developers to build cross platform native apps using standard web technologies in JS and HTML.

I was thinking what is the right and best approach to start structuring my project in an organized pattern such as MVC, so i have bunch of views and controllers and my code is clean to build robust solution!

The Solution
You have different ways to implement this, One is to use Angular JS library that helps you strcture your code in a MVC patterns and design your views that are linked to models and js files that have all your controllers implementations.

Another approach, is to use TypeScript which gives your the ability to write clean client scripting and it generates JS code for your and it works in all browsers!

If you are using any OOP programming language such as: C# or Java. It will so easy for you to add TypeScript (*.ts) file in your project and start writing classes, interfaces and all OOP code with IntelliSense and type casting capabilities within VS IDE.

So, you write C# Like code in TypeScript file, it generates JS code and it works in al browsers.

Here is a play ground site to test it some code and see generated code:

The same site has tons of materials to learn, samples and get started:

TypeScript is available and supported if you use VS 2013 (update 2) or VS 2015!

Hope this helps!