Simple clear advice in plain English

Hands On: Programming for the cloud

An introduction to the web-based programming platform

Cloud comparisons
There are substantial differences between these platforms. First, it is interesting to look at the extent to which resources are shared. Salesforce.com shares the most, with its deeply multi-tenanted model.

Amazon is at the other extreme, running many individual and isolated virtual machines, each with its own operating system and application code. Microsoft and Google are in between, not offering bare virtual machines as in Amazon’s EC2, but still requiring customers to code their own applications.

Second, the language choices are different. With Amazon, you can use what you like. Microsoft is initially offering .Net only, but says it will enable native code later. You code for Microsoft’s cloud with Visual Studio, while Google requires Python and Salesforce.com its own proprietary Apex language.

Third, each provider has its own database engine, neither of which is a standard SQL relational database manager, though you could run something like MySQL or Oracle on Amazon’s EC2. SimpleDB, SQL Services and Big Table are all simplified database managers tuned for high-scale, shared use. Force.com is a database platform, with Oracle running underneath, but it has its own query language, not SQL.

Fourth, the pricing model varies. Google App Engine, currently in preview, is free for up to five million page views per month. Like Google Docs, it may remain free for generous levels of usage because of the wider business model based on advertising income. Windows Azure is free while in preview, but the final release, expected late in 2009, will be pay as you go. There are no details, but the algorithm will include CPU usage, the amount of storage, data transfer and transactions. Amazon is also pay as you go and deliberately priced keenly as a commodity. Salesforce is the most expensive, with each user paying a substantial monthly subscription.

Finally, a distinctive feature of Microsoft’s cloud is its offline component for Windows and Mac. Google also has an offline capability through a browser add-on called Gears. You could argue that the Chrome browser is a rich client for Google cloud applications, but it lacks the built-in synchronisation in Microsoft’s Live Framework. Microsoft has the most elaborate cloud development platform, though that is not necessarily a good thing ­ there is high value in simplicity.

Reasons to avoid the cloud
There are several reasons to be wary of cloud computing. The first is reliability. Cloud vendors argue that their systems are likely to be more reliable than yours, which is probably true. Still, handing over control of critical data and applications to a third party demands a high level of trust. All the cloud providers have suffered outages, and these can be costly.

The second factor is how much you need to work disconnected, or with the richer features of desktop applications, though with rich clients such as Flash and Silverlight, web applications can be remarkably capable.

Third, there is the problem of lock-in. Once you write to Force.com Apex, Microsoft’s Live Framework or Google’s Big Table, how easy is it to move to another cloud provider? It varies, but at the recent Dreamforce conference in San Francisco, Salesforce.com CEO Marc Benioff was open about this aspect. “Our job is to make sure you choose our platform because once you have chosen another platform, getting you off it is usually impossible,” he said.

That said, Salesforce.com is the most proprietary of these providers. Code that runs on an Amazon virtual machine might well run elsewhere with little change.

Delphi returns to .Net
In May 2008, Embarcadero announced its acquisition of Codegear, the Borland subsidiary responsible for the Delphi and JBuilder development tools. The move seems to have been good for Delphi. Both Delphi 2009 and C++ Builder 2009 are high-quality tools and have little competition as the most productive way to create native code Windows applications. But what about .Net? Several versions of Delphi for .Net have appeared over the years, but there has been little interest, thanks to buggy releases and a failure to keep up with Microsoft and C#.

Embarcadero is now trying again with Prism. This is a U-turn product. Previously, Delphi for .Net had its own IDE and developers were encouraged to use VCL.Net, a version of Delphi’s visual component library ported to the .Net platform. Prism, by contrast, is a Visual Studio add-on, and rather than supporting VCL.Net it uses standard Microsoft libraries, including Windows Forms, ASP.Net and soon Silverlight.

Prism is based on an earlier product called first Chrome and then Oxygene, produced by Delphi add-on vendor Remobjects. Embarcadero has taken Oxygene and added support for its own technologies, including the Blackfish SQL database, Interbase and Datasnap. The most striking feature, though, is compatibility with Mono, the cross-platform version of .Net sponsored by Novell. So if you install Prism, you get options for Mac projects including Cocoa or Windows Forms for the Mac.

There is a bit more to it than that, especially with Cocoa, since you need to use Apple’s GUI design tools, but it is still a surprise to see these options in Visual Studio. Prism looks good if you want to code for .Net, though compatibility with existing Delphi projects is poor and it is hard to see advantages over Microsoft’s C#.

Reader Comments

   

Add your comment

All fields must be completed. Your email address will not be displayed or used to send marketing messages.

All messages will be checked by moderators before appearing on the site.

See our Privacy Policy for more information.

Related articles

notepadpp-text-editor

Notepad++ 6.1 is a very powerful text editor

If you want to edit plain text documents, Notepad++ has all the tools you need, and a few more beside

sharpdevelop

Get programming in C# and VisualBasic.NET with SharpDevelop

This lightweight but capable programming tool can be used to make programs for Windows

Puzzle pieces illustration

Explore Windows Live Essentials

Confused by Microsoft’s Windows Live Service? Our Back to Basics explains everything Live Essentials has to offer and what's worth it and what's not

Question & Answer

Q.Why are some of the keys on my keyboard doing strange...

> Read the answer

Q.Is my phone’s Bluetooth any use?

> Read the answer

Q.Can I switch boot drives so that I can work on older...

> Read the answer

Best deals on the web

img

Samsung RV520-A07

£359.98- Buy it now

img

Acer Aspire 5750G (LX.RXP02.019)

£399.99- Buy it now

img

Apple MacBook Pro (MD313B/A)

£904.37- Buy it now

Latest issue & subscription deals

Poll

Are you concerned about viruses that target mobile phones?

Jargon Buster

Computing terms explained in plain English

Restore point

A Windows backup of system files and settings.

Great shopping deals from Computeractive