Archives

Archives / 2013
  • My Session on JavaScript, Meet Cloud : Node.js on Windows Azure

    I did a presentation titled “JavaScript, Meet Cloud: Node.js on Windows Azure” at the Kerala JavaScript user group. The goal of the session, was to demonstrate the capabilities of JavaScript, as a programming language on the Cloud, for building server-side applications and Mobile Backend as a Service (MBaaS). In he session, I had demonstrated Windows Azure as a Cloud platform for building Node.js apps and Mobile backend services.

  • Deploying Socket.IO App to Windows Azure Web Site with Azure CLI

    In this blog post, I will demonstrate how to deploy Socket.IO app to Windows Azure Website using Windows Azure Cross-Platform Command-Line Interface, which leverages the Windows Azure Website’s new support for Web Sockets. Recently Windows Azure has announced lot of enhancements including the support for Web Sockets in Windows Azure Websites, which lets the Node.js developers deploy Socket.IO apps to Windows Azure Websites. In this blog post, I am using  Windows Azure CLI for create and deploy Windows Azure Website.

  • Cloud MBaaS : The Next Big Thing in Enterprise Mobility

    In this blog post, I will take a look at Cloud Mobile Backend as a Service (MBaaS) and how we can leverage Cloud based Mobile Backend as a Service for building enterprise mobile apps. Today, mobile apps are incredibly significant in both consumer and enterprise space and the demand for the mobile apps is unbelievably increasing in day to day business. An enterprise can’t survive in business without a proper mobility strategy. A better mobility strategy and faster delivery of your mobile apps will give you an extra mileage for your business and IT strategy. So organizations and mobile developers are looking for different strategy for meeting this demand and adopting different development strategy for their mobile apps. Some developers are adopting hybrid mobile app development platforms, for delivering their products for multiple platforms, for fast time-to-market. Others are adopting a Mobile enterprise application platform (MEAP) such as Kony for their enterprise mobile apps for fast time-to-market and better business integration.

  • Adopting Technologies for the Sake of Technologies

    Unlike other engineering industries, the software engineering industry is really lacking maturity. The lack of maturity can see in different aspects of entire software development life cycle. I think other engineering industries are well organised and structured with common, proven engineering practices. The software engineering industry is greatly a diverse industry with different operating systems, and variety of development platforms, programming languages, frameworks and tools. Now these days, people are going behind the hypes and intellectual thoughts without understanding their core business problems and adopting technologies and practices for the sake of technologies and practices and simply becoming a “poster child” of technologies and practices. Understanding the core business problem and providing best, solid solution with a platform neutral approach, will give you more business values and ROI, instead of blindly adopting technologies and tailor-made your applications for the sake of technologies and practices. People have been simply migrating their solutions in favour of new technologies and different versions of frameworks without any business need.

  • Git Source Control Integration with Windows Azure Mobile Services

    In this blog post, I will take a look at Git source control integration provided by Windows Azure Mobile Services. Windows Azure Mobile Services is great framework for mobile backend development on the Windows Azure platform, which provides a Node.js based programming model for writing server-side scripts. You can write the mobile services scripts in browser window provided by Windows Azure developer portal. Windows Azure Mobile Services also provides you to setup source control with Git, which lets you clone the Git repository for Mobile Services scripts, in your local machine where you can work on the  Mobile Services scripts in your favourite IDE or text editor and later you can commit and push the source code back to Windows Azure production environment. The source control integration lets you easily work as a team for working on Mobile Services scripts.

  • ASP.NET Web API OWIN Self Host on Windows Azure

    In this blog post, I will take a look at Open Web Interface for .NET (OWIN) and will also demonstrate how to deploy ASP.NET Web API app on Windows Azure Worker Role using OWIN and OWIN HttpListener server provided by OWIN self host infrastructure. The OWIN HttpListener server lets you host ASP.NET Web API within your own process. In this demo, I will host the ASP.NET Web API app within a Windows Azure Worker Role.

  • Writing Unit Tests for ASP.NET Web API Controller

    In this blog post, I will write unit tests for a ASP.NET Web API controller in the EFMVC reference application. Let me introduce the EFMVC app, If you haven't heard about EFMVC. EFMVC is a simple app, developed as a reference implementation for demonstrating ASP.NET MVC, EF Code First, ASP.NET Web API, Domain-Driven Design (DDD), Test-Driven Development (DDD). The current version is built with ASP.NET MVC 4, EF Code First 5, ASP.NET Web API, Autofac, AutoMapper, Nunit and Moq. All unit tests were written with Nunit and Moq. You can download the latest version of the reference app from http://efmvc.codeplex.com/

  • The new Auto Scaling Service in Windows Azure

    One of the key features of the Cloud is the on-demand scalability, which lets the cloud application developers to scale up or scale down the number of compute resources hosted on the Cloud. Auto Scaling provides the capability to dynamically scale up and scale down your compute resources based on user-defined policies, Key Performance Indicators (KPI), health status checks, and schedules, without any manual intervention. Auto Scaling is an important feature to consider when designing and architecting cloud based solutions, which can unleash the real power of Cloud to the apps for providing truly on-demand scalability and can also guard the organizational budget for cloud based application deployment. In the past, you have had to leverage the the Microsoft Enterprise Library Autoscaling Application Block (WASABi) or a services like  MetricsHub for implementing Automatic Scaling for your cloud apps hosted on the Windows Azure. The WASABi required to host your auto scaling block in a Windows Azure Worker Role for effectively implementing the auto scaling behaviour to your Windows Azure apps. The newly announced Auto Scaling service in Windows Azure lets you add automatic scaling capability to your Windows Azure Compute Services such as Cloud Services, Web Sites and Virtual Machine. Unlike WASABi hosted on a Worker Role, you don’t need to host any monitoring service for using the new Auto Scaling service and the Auto Scaling service will be available to individual Windows Azure Compute Services as part of the Scaling.

  • Scaling Node.js Real-time Apps with Windows Azure Service Bus

    In this post, I will demonstrate how to scale out real-time Socket.IO apps with Windows Azure Service Bus by leveraging the Node.js module Socket.IO-ServiceBus. The Node module Socket.IO-ServiceBus lets the Node.js developers scale out the Socket.IO apps to multiple servers, which will work with Socket.IO store, provided by Windows Azure Service Bus Topic. The only Windows Azure component you need to scale out your Socket.IO apps with Socket.IO-ServiceBus, is Windows Azure Service Bus Topic. You can deploy your Socket.IO apps into any cloud platform or on-premise servers and, the apps deployed in multiples servers, that will be work through the Windows Azure Service Bus. This blog post assumes that you have already worked with Socket.IO apps and will be focused on how to scale out Socket.IO apps with Windows Azure Service Bus.

  • Edge.js - Running Node.js and .NET in One Process

    C# is the most powerful static type programming language which can be used for developing wide variety of applications. Node.js is a server-side JavaScript platform which can be used for building high performance scalable applications on the V8 JavaScript engine. .NET provides more than 11,000 packages via NuGet and Node.js provides more than 30,000 modules via NPM. It would be great if we could use both .NET and Node.js platforms in one place. Edge.js is a Node.js npm module that lets the developers to run .NET and Node.js code in one process, where you can call  .NET functions from Node.js and Node.js functions from .NET. With Edge.js, you can call C# async lambda from node.js. Both .NET and Node.js are using different threading models, but Edge does handle the threading models of single threaded V8 and multi-threaded CLR. Currently Edge.js supports to use JavaScript with C#, F#, Python, and PowerShell. Edge.js was developed by Tomasz Janczuk. The Edge.js framework hosted on Github at https://github.com/tjanczuk/edge

  • Consuming Windows Azure Mobile Services REST API from ASP.NET Web API App

    Windows Azure Mobile Services lets the developers to use structured storage, user authentication and push notifications to Android, iOS, HTML, Windows Store, or Windows Phone 8 apps  by leveraging the Windows Azure Cloud platform. Using with Windows Azure Mobile Services, you can enjoy the scalability power of Cloud to your Mobile apps. In this blog post, I will demonstrate how to persist data on Windows Azure Mobile Services Table from a ASP.NET Web API app by leveraging the Windows Azure Mobile Services REST API, and finally provides a generic type helper class for performing CRUD operations on the Windows Azure Mobile Services Table.

  • Windows Azure SDK 2.0 for .NET Released

    The Windows Azure Cloud Computing platform has been in the big news after the platform exceeded the annual revenue of $1 billion. Today, Microsoft has been released the Windows Azure SDK 2.0 for .NET update that lets the .NET developers to build Windows Azure apps from Visual Studio with an easy and more elegant manner. The new update provides the lot of improvements within Visual Studio, for developing, deploying and managing Windows Azure apps. You can download and install the Windows Azure SDK 2.0 for .NET from the Windows Azure .NET developer center. The Windows Azure SDK for .NET is a open source project hosted on GitHub.

  • Sending and Receiving Messages in Windows Azure Storage Queue with JavaScript Serializer

    In this blog post, I will demonstrate sample code for sending and receiving messages in Windows Azure Storage Queue with JavaScript Serializer for serializing and de-serializing messages. We are adding a custom type to Windows Azure Queue where we are using JavaScriptSerializer Class provided by System.Web.Script.Serialization namespace, for the serialization.

  • Slides and Code from My Global Windows Azure Bootcamp Presentation

    I did a presentation on Windows Azure Cloud Services at Global Windows Azure Bootcamp in Kochi, India. The title of the session was “Windows Azure Cloud Services – Web Roles and Worker Roles”. In this session, I have demonstrated how to building multi-tier Windows Azure Cloud Services application using with Web Role, Worker Role, Table Storage and Service Bus Queue. You can download the source code from my github repository https://github.com/shijuvar/AzureCloudServices. The code walkthrough demonstrated in the blog post Building Windows Azure Cloud Services App with Web Role, Worker Role, Table Storage and Service Bus. The slides used for the talk can download from here.

  • Deploying Windows Azure Cloud Services Apps

    In my previous post Building Windows Azure Cloud Services App with Web Role, Worker Role, Table Storage and Service Bus, I have demonstrated how to build a multi-tier cloud application using Windows Azure Cloud Service. In this post, I will demonstrate how to deploy our Cloud Service application on Windows Azure using Visual Studio 2012. You can create a Cloud Service from Visual Studio itself and can deploy the Cloud Service to Windows Azure without using the Windows Azure management portal.

  • Building Windows Azure Cloud Services App with Web Role, Worker Role, Table Storage and Service Bus

    Windows Azure Cloud Services, provides a Platform as a Service (PaaS) offering for building multi-tier, highly scalable, reliable cloud applications on the Windows Azure Cloud platform. In this blog post, I will demonstrate how to build a multi-tier Windows Azure Cloud Services application using with Web Role, Worker Role, Table Storage and Service Bus Queue. This demo application will also demonstrates the usages of Service Bus Queue, Table Storage and how to communicate between the Web Role and Worker Role.

  • Using async/await with Windows Azure Service Bus Client SDK

    The Windows Azure team has recently released Windows Azure Service Bus 2.0.0-beta which lets the Windows Azure developers to use Task based  asynchronous operations while working with Windows Azure Service Bus. Now the Windows Windows Azure Service Bus SDK provides Async version for the Service Bus methods. The SDK will be working with both Visual Studio 2010 and Visual Studio 2012 as the SDK compiled against .Net Framework 4.0.

  • Creating and Deploying Windows Azure Web Sites with Microsoft WebMatrix 3

    Microsoft WebMatrix is a free, lightweight and cloud-connected web development tool which can be used for building and deploying Windows Azure Web Sites. Microsoft WebMatrix supports ASP.NET, Node.js and PHP. A while ago I have written a post  Building and Deploying Windows Azure Web Site with Node.js and MongoDB by using Microsoft WebMatrix, where I have demonstrated how we can develop and deploy Web Sites to Windows Azure. The newly released WebMatrix 3 is an excellent IDE for building and deploying Web Sites to Windows Azure. The WebMatrix 3 lets the developers to create Windows Azure Web Sites from the IDE itself and can easily publish to Windows Azure, without using Windows Azure management portal. You can add Windows Azure accounts to WebMatrix 3 and can easily create and deploy Windows Azure Web Sites using WebMatrix 3. WebMatrix 3 provides better supports for working with Windows Azure and source control integration with Git and TFS. The source control integration is a new feature to WebMatrix.

  • Generating Entity Data Model Diagram from EF Code First DbContext

    The Entity Framework Code First approach lets the developers to build applications with Domain-Driven Design (DDD) by hand coding your Persistence Ignorance (PI) classes. At the same time, it would be great if we could see the entity model in a visual diagram, which can also ensure that our domain model is accurate and our relationships are designed properly. The Entity Framework Power Tools lets you to view a  read-only view of the Code First model in the Entity Model Designer, from a Code First DbContext class.

  • Automating Windows Azure with Windows Azure CLI

    Recently, Microsoft Windows Azure team has announced the release of azure-cli 0.6.10 which can be used for automating Windows Azure in an easy and elegant manner. The azure-cli is a Node.js based cross platform command line tool for Windows Azure, which can be used for managing and deploying Windows Azure Websites, Windows Azure Storage, Mobile Services, Virtual Machines, Service Bus from command prompt on Windows, Mac and Linux.

  • Building and Deploying Windows Azure Web Site with Node.js and MongoDB by using Microsoft WebMatrix

    In this blog post, I will demonstrate how to build a web app with Node.js and MongoDB, and will deploy it on Windows Azure as a Windows Azure Web Site. Firstly, I will create a web site with Node.js, Express.js, Mongoose and MongoDB. Then I will create a MongoDB database on MongoLab, which is a MongoDB as a service hosted on Cloud, and finally deploy the web app to Windows Azure Web Site. The source code for the demo app is available on Github at https://github.com/shijuvar/NodeExpressMongo