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#.
Related articles
Q.Why are some of the keys on my keyboard doing strange...
Q.Is my phone’s Bluetooth any use?
Q.Can I switch boot drives so that I can work on older...
Old Street roundabout is being touted by the Government as the UK's answer to Silicon Valley, but it seems our best innovations are coming from all over the UK
|
|
|
|
|
Computeractive Excel (2010) Online tutorialPrice: £19.99 |
Computeractive Word (2010) Online TutorialPrice: £19.99 |
Computeractive Powerpoint (2010) Online TutorialPrice: £19.99 |
Angry BirdsPrice: £9.99 |
Back Issue CD-Rom 14 (2011)Price: £15.99 |