The Mobile Cloud–A topic to consider

  Two unmistakable and inseparable trends – Mobile & Cloud
 

The rapid rise and use of mobile devices and cloud computing is unmistakable. It makes sense that these two technologies are interrelated. Nearly all, if not all, cellular devices leverage compute and storage from somewhere else. The cloud can offer a lot - massive amounts of CPU, robust storage models, and comparatively huge bandwidth. 

With that said, I still agree that there is still a need for hardware at businesses. However, Gartner makes a huge prediction that by 2012 20 percent of businesses will own no IT assets. Budgets will be targeted at more strategic, core-competency business goals. IT staff will be reskilled or reduced.  Gartner further predicts that by 2014, there will be a 90% mobile penetration rate and 6.5 billion mobile connections. Penetration will not be uniform, as continents like the lower levels in Africa versus Asia. Electronic transactions will be the rule, not the exception.

At my next talk, I’ve planned 45 minute walkthrough where I explain how Microsoft's Mobile/Cloud offering provides all the core building blocks needed by companies and individuals to harness cloud power on a mobile device. Indeed, creating mobile applications that leverage cloud power will be a critical piece of the future of software.

The bottom line is this, companies that write these mobile/cloud applications will need a very comprehensive set of tools and services for building the mobile client to connecting and securely using cloud services.

Mobile applications have redefined the timelines to deliver applications. Businesses must build applications in weeks, not months. The tooling and technologies must support a unified approach to building mobile/cloud applications, spanning the client all the way to the server, including various models for storage, compute. Developers need one robust development environment (Visual Studio) , with related SDKs, frameworks, and languages, regardless whether they are writing cloud-based server code or mobile client code. They need to interoperate between cloud based and on-premise, client applications, not just one or the other.

When you speak of open standards, there are many things to speak of here. Are we talking about compliance? HIPPA? Sarbanes-Oxley? Is it security you are worried about – OATH, SWT, AD? Is it web standards – HTTP/HTTPS, ATOM, JSON, XML?

Microsoft offers a full suite of products to help you with both on-premise and cloud-based software. Microsoft also offers a variety of languages and products which allow you to build the whole application, from the cloud based server down to the client, all the way to on-premise.

Here is a sample of the technologies that I frequently demo:

Technology How it makes you productive
Visual Studio 2010 Developers around the globe agree that Visual Studio 2010 is one of the most powerful and well engineered Integrated Development Environments available. Visual Studio provides database development, integrated debugging and diagnostics, application lifecycle management, testing, architecture and modeling. Visual Studio can be used to develop console and graphical user interface applications along with Windows Forms applications, web sites, web applications, and web services in both native code together with managed code for all platforms supported by Microsoft Windows, Windows Mobile, .NET Framework, and Microsoft Silverlight.
Windows Azure SDK 1.3 Allow developers to create applications that run in Microsoft datacenters. Also provides a simulation environment that allows developers to fully develop and test locally before having to deploy up into the cloud. The Azure SDK is highly integrated into Visual Studio
Windows Azure Platform and Portal It provides a cloud operating system called Windows Azure that serves as a runtime for the applications and provides a set of services that allows development, management and hosting of applications on and off-premises. The Windows Azure Fabric acts as an operating system to interconnected nodes consisting of servers, high-speed connections, and switches. Together, the platform offers you scalable and reliable scheduling, resource allocation, device management, and fault tolerance. Windows Azure Platform provides an API built on REST, HTTP and XML that allows a developer to interact with the services provided by Windows Azure.
SQL Server 2008 R2 Provides the developer centralized management and deployment of instances of relational databases, both on-premise and cloud-based, with SQL Azure. It is a full-featured environment for accessing, configuring, managing, administering, and developing all components of SQL Server. SQL Server Management Studio combines a broad group of graphical tools with a number of rich script editors to provide access to SQL Server to developers and administrators of all skill levels.
Developing the Mobile Client There are two programming models for the phone: XNA Game Studio or Silverlight: Which Product is Right for Me? Choosing between Silverlight and XNA Game Studio isn’t quite as straightforward as looking at a feature list or performance metrics. Each framework was designed with different goals and customers in mind. There are, as a consequence, very few hard and fast rules about which framework you must use. Phone applications have their own challenges. They must operate reliably with variable network connectivity. They must minimize the use of network bandwidth (which may be costly). They must minimize its impact on the phone's battery life.