#  Mike Gualtieri's Blog 

#  Cloud Or No Cloud You Still Have To Write Code

I am experiencing Cloud fatigue already. If I hear anyone even come close to uttering the word "Cloud 2.0", I might be found hiding in the Forrester fitness room in a fetal position. I am a fan of Cloud computing and my colleague James Staten has a great report on cloud in the enterprise. I think that cloud computing such Amazon EC2, Microsoft Azure, IBM, Google AppEngine, and others are legitimate and have a **great future in infrastructure**. What I am not a fan of is the **buzzword grab** going on by many technology companies saying they work in the cloud, have a cloud strategy, or have a new cloud offering à la SOA, Web 2.0, and whatever is next. Vendor X can work in the cloud. Well, no kidding. You just spin up your platform in the cloud and run your app on it. Of course, that doesn't mean you can take advantage of some of the value-added services in the cloud right off the bat but there is still value in having an infrastructure on-demand. The buzzword grab vendors are the source of my fatigue. 

**What Do Application Developers Need To Know About Cloud?**

On one level, the cloud is just another deployment option. One day when you are happily writing code in front of your NetBeans, Eclipse, or VisualStudio IDE there will be a button that says "Deploy". You will click the button and then see a list of deployment platforms such as: local, enterprise server, cloud provider. Just pick cloud. A wait dialog box will come up for a a few seconds. Then you are done. That should be the application developer's view of the cloud. The details are abstracted away. Easy breezy.

Now, many of the clouds also offer services such Amazon's SimpleDB. You'll be able to code to those using APIs just as always. If you are in Java you'll bring in the package to NetBeans and voilà you can start instantiating services and use them.

**Cloud Vendors Will Seduce You With Services To Lock You In**

Be careful when choosing value-added services offered in the cloud. Despite what the cloud vendors say about utility computing, they would love to make it harder for you to leave them. Remember how J2EE was designed to allow you to deploy to any server. Or, SQL was embraced as a database standard. What happened? Both app server and database vendors seduced you with features that made it difficult to leave them. Some of these features add value and are worth the lockin. Just know what you are getting into.

**Cloud Security Is Still A Concern**

The popular thing to say about Cloud security is to snicker and then to say that it is probably more secure than your data center or no different than outsourcing your infrastrcuture to a hosting firm. That kind of dismissiveness is unwise. Security is always a concern on any deployment platform - PC, Blackberry, corporate server, hosted server, mainframe, or Florida voting machine. Be concerned about the Cloud as you would any deployment platform, but don't be afraid.

Infrastructure professionals and perhaps CFO trying to save a few bucks should be concerned with the Cloud. But, cloud or no cloud, application developers still have to write code. 

What do you think?

Mike, I agree up to point depending on what you consider 'coding'. 'Cloud' is a meaningless buzzword right after 'Web 2.0' and 'Agile'. And yes, for all three you still have to somehow 'write code' meaning to model the data entities (DB or WSDL), analyze and create process, presentation and content. Authentication, role/policy authorization, encryption and digital signature will be essential for businesses regardless of where they deploy. I am stunned like you how little that is considered. One of the reasons we will be coding is because business and IT have a hard time to accept NON-CODING paths to 'Agile Web 2.0 Clouds,' such as our Papyrus User-Trained Agent. Rather than coding processes we observe user interaction with data entities and content in the collaborative workspace (which could be a 'Cloud' environment once we know what that is exactly) to discover repeatable process activity and then propose these to other users of the same role. Typical reaction: Sounds cool - if it works.Question: Are we all stuck in coding because we as IT can not imagine other ways or fear we will be obsolete? Are users stuck in front of coded applications because they would not trust them any other way? Have we destroyed the trust in IT that users would need by using those silly 'Agile Web 2.0 Cloud' buzzwords? I think we have!

Thanks for the article Mike. It makes sense 100%. It's marketing and Sales jargon that create even more hype and confusion than there already is in the marketplace. No body talks about the bottom line, which is nothing but coding, one way or other.With all due respect to Mr. Max, last time I checked, even his User Trained Agent (UTA) is still programmed to do what he claims it does. Everything boils down to coding, Whether it is a custom developed application or a COTS system, whether it stays in the cloud 2.0 or Web 2.0, whether it uses Agile or PMBOK.