« July 2010 | Main | April 2011 »

August 03, 2010

Cloud Computing

Cloud Computing is a very powerful concept. Cloud Computing is not just used for consumer apps but also for business apps. We call this as Enterprise cloud computing. So let’s break this further down to know what cloud computing is all about?

What is Cloud Computing?

Cloud Computing is an electronic based computing process that helps you avoid dealing with complex practices. You might have big ideas that streamline your business and drive sales through roof. But to get there you would write business apps, and these business apps have always been too expensive. Consider the scenario below:  

Behind each app is the world of complexity involved. They require a Data Center with office space, power, cooling, bandwidth, network servers and storage. Along with this, a complicated Software stack like Crystal Reports, OBLIX 7.00, TIBCO 7.2.1, ORACLE 11.1, WEBLOGIC , JDK 6 , Windows VistaSP2, etc, is needed and to add  on, a team of experts to maintain them. Also, there is a necessity for Development, Testing, Staging, Production and Failure Environment.  Phew! When there encounters a problem then, ‘Oh Good Luck’, you call the technical support. What if they don’t know how to resolve? They then blame someone else.  Upgrading to new versions would degrade the whole system. This is the situation for a single app but when you multiply these headaches across hundreds or thousands of apps, it’s easy to see what the biggest company with best IT Departments aren’t getting the apps they need. Small Business doesn’t even have a chance to survive.

Now, here is where the Cloud computing concept comes into picture. With Gmail,

Do you require servers and storage? No.  

Do you require a technical team to keep it up and running? No.  

Do you have to do any upgrades? No.  

With Cloud computing, the setup running your apps runs on a shared data center. You just need to plug-in. This makes it faster to get started and cost less. When you use any app that runs in a cloud, you just need to login, customize it and start executing. That’s the power of cloud computing!

Cloud computing for a layman  

Let me give another great example for Cloud Computing. To generate electricity via turbines, magnets, batteries, transformers and fossil fuels, there is a cloud named “Electricity Company” that takes care of all these and supplies it to your home. All you need to do is just plug-in. Now, let’s apply the same logic on computers. Here in the cloud, you have computer stuffs that you don’t like to deal with such as servers, storage, office space, power, cooling etc. But you can access the power of these things by simply plugging into the cloud using the internet and it would bill you based on the usage by pooling in the resources together.  

Cloud computing - Business perspective  

These days, businesses run all kinds of apps such as CRM, HR, Accounting and custom built ones. With custom build apps, you can be up and running in few days which is totally unheard of for traditionally built software. They are based on an architecture called “Multi-Tenancy”.

With a Multi-Tenant app, you avoid duplication of each app and access only one app that everyone shares. Now, this is flexible enough for everyone to customize based on their specific needs. So when your app runs on a cloud you don’t buy anything. You don’t need to pay for personnel, product, facilities and it turns out to be more scalable, secure and reliable than the majority of apps out there. Let someone else invest in the infrastructure so you can focus on your key business applications. It’s all rolled out in your predictable monthly subscription. In addition, you pay based on usage alone. Finally cloud app is a simple model that has a huge impact on your bottom line!

( The author, Tauseef.M, is a Software Engineer for Binary Spectrum).

 

SilverLight from Microsoft

“In this world, there are some known things and some unknown things, and in between are the doors of perception “and I am here to set right your perception for SilverLight.

Microsoft has the best development IDE on the market. If you are a .NET/Microsoft developer, you already have the majority of the skills necessary to start developing in SilverLight!!

What is Silverlight?

Windows users won’t really care whether the highly rich web applications that they are viewing is using SilverLight or Flash . Both technologies require a small plug-in to be installed and once done, both are invisible until the user navigates a page that require their services. But we as developers need to care about which technology to choose. We need our applications to run on as many platforms as possible, and SilverLight applications will run on many browsers such as IE and Firefox on Windows, and Safari, Opera on the Mac.

OK lets not divert from the topic, let me technically provide SilverLight defination. “ SilverLight is a new cross-browser, cross-platform implementation of the .NET Framework for building and delivering the next generation of media experiences and Rich Interactive Applications (RIA) for the web.”

SilverLight doesn't require ASP.NET to be used on the backend web-server , it means you can use SilverLight with PHP on Linux if u wish to.   Thus the saying goes “Microsoft rebooted the Web “.

How the name Silver Light?

Below are the top ten names that got rejected before the name SilverLight came up:-

1.       Microsoft Windows Presentation Foundation Live Rich Client ActiveX Player R2 Ultimate Edition Service Pack 1 CTP (WPFLRCAPR2UESP1CTP).

2.       Redlight.

3.       Microsoft 2.0

4.       Microsoft Light New User Experience.

5.       MicroMedia Player.

6.       Windows Technology Foundation.

7.       Non-Windows Presentation Foundation.

8.       David.

9.       AJAX - Asynchronous JavaScript and XAML.

10.   GrayLuminosity.

A sample SilverLight Application??

 Here we are going to create a simple SilverLight Application.

Steps to be followed:

1.       Open Visual Studio and select the File->New project .

2.       The below window gets displayed.

3.       After selecting the SilverLight Application, enter name and location as below and click OK.

Silverlight Application

4.       A Pop -Up as below gets displayed as below.

5.       You need a webpage to host the SilverLight components that you develop. Visual Studio makes this job easier just by prompting you to automatically create a website. Choose the options as shown in the attachment below.

New Silverlight Application

6.       Thus when you create a new SilverLight Application using Visual Studio 2008, it creates loads of files by default as seen below.

Silverlight Applications

 

Let’s detail out each of these files

·         App.xaml:

It is used to declare element which are available through-out the application. You can also declare Global variables just same as in Global.asax in Asp.net.

·         App.xaml.cs:

A code-behind file for the App.xaml file.

·         MainPage.xaml:

o   This is the page where all the UI elements that you require needs to be added. All UI elements in a .xaml control must be placed within a layout panel.

·         ClientBin folder is used to place the .xap file of SilverLight application. You can keep this anywhere in your web application but this is the default that is used by the SilverLight.

·         SilverLight.js is a helper file which enables Web sites to create advanced SilverLight installation and instantiation experiences.

·         SilverLightApplicationTestPage.aspx is the web page that will be displayed once the SilverLight application is built error-free and executed.

When you compile your Silver light Application project, it will compile all .xaml files and various other resources in to a single assembly file with the extension .xap and will have the same file name as your project name.

What is XAP?

XAP (pronounced as ZAP) is the file extension for a SilverLight-based application Package (.xap). This file contains the compressed assemblies and resources of a SilverLight 2.0 application. This .xap file contains the XAML and code from your .xaml files and will be executed by the SilverLight plugin installed.


One nice thing about Visual studio is, it will show you a preview of the page as you type the xaml tags. When you complete typing the above xaml tags in your .xaml page, you will see the design preview in Visual Studio as shown below:

Silverlight Applications- Microsoft Visual Studio

 

Thus you have created your first Silver Light application.  You can also zoom the Rectangle box above to 100%. Now just built the application and run it. You are done!

 (The author, Tauseef.M is a Software Engineer in Binary Spectrum).