Cloud computing is becomming more and more popular so I thought I would take the time to state a few opnions and facts about cloud computing. That way you as a client can take a look at the options and see if cloud computing is right for you. 

First a definition.
The term cloud computing comes from network diagrams. In a network diagram a cloud is used to repersend a non-significant part of your network. For example, lets say you have two locations, and you are mapping the computers in both places. The cloud is used to repersent “the internet”. It’s non-significant, because once the data leaves the network at location 1 it just gets to location 2 and it doesn’t matter how. Once it’s back at location 2 then it’s your job again to figure out how to get it to the proper computer. Cloud computing is called such because it happens “in the cloud”, or in other words, out there somewhere non-specfic. 

The good
So some really good uses for cloud computing include hosting servers and web sites. The “cloud” usually means it’s very easy to create a new server when you need to. In some instances it means it’s easy to make your server bigger. EC2 is a great example of the former. It’s very easy to make a new server from a preconfigured image. I could, in the time it takes to write this sentance create litterially hundres of servers to do a task. With EC2 you also get the ability to pay for what you use. When gets busy, I instantly (sort of) spawn a bigger server. When it’s quite I go to fewer or smaller servers. Other “cloud services” include things like S3 or CloudFiles. Which exist as distribution points or offsite storage. I have had great success using S3 as a distribution point for software and high bandwidth content like videos. Because I only pay for what I am using, in slow periods I pay almost nothing and when it gets busy I pay more. CloudFront and other CDNs are also a great usage. Basiaclly it lets you  host your files from geographicly close points. So if your watching a video in Mane, your probably downloading it from a server in Mane. This helps with high traffic sites, and site that need to transfer things quickly.

The Bad
Some really bad things to use clouds for include those new “music clouds”. Document syncing, and personal file sharing. I know why they exists, but they way they are structured now (and they always will be due to the nature of the cloud), if your provider is compromised, then so are you. Also your giving controll of your files to someone else. Someone who is just trying to make more money. Don’t think for a second that Google, the  worlds largest advertiser, won’t eventually put ads in your music collection. Dropbox, is horridly insecure. If someone were to hack dropbox do you really want them to get copies of every document you have on your computer. How about MobileMe, I am not conviced that service can stay running for an entire month. Lets also not forget that any “pure” cloud solution is going to require constant internet access. So when your in the car, or on the plane, your not going to be able to listen to your music, edit your documents, or watch your videos.

Cloud Computing is good for servers because you controll the server, the provider is just providing you some (virtual) hardware to run it on. Cloud “services” like Google Docs, iDisk, Dropbox and the music clouds, are bad becuase you don’t controll anything, and your giving up the one thing you could always fall back on, the files, for someone else to controll. You watch, I predict, within the first year, one or more of the cloud music services will delete someones music because it’s unlicenced or other simular reason. 

P.S. For the record, when you setup a server in the cloud you also keep a local copy of the entire server, or at least the files on the server. The files are still yours. Programming LLC. is about one thing. Getting your project done the way you like it. Using Agile development and management techniques, we are able to get even the most complex projects done in a short time frame and on a modest budget.

Feel free to contact me via any of the methods below. My normal hours are 10am to 10pm Eastern Standard Time. In case of emergency I am available 24/7.

Phone: (813) 421-4338
Skype: coteyr
Guru: Profile