Home Continuous Delivery & DevOps Cloud – Based Test Dev. 101

Cloud – Based Test Dev. 101

Throw away clunky hyper-visors, and stop thinking about computer hardware and software license during your development projects.

The first thing you think about when you hear “The Cloud” may not be development and testing. The Cloudy market is filled with SaaS applications, hosting, and cloud-based file systems. All are very useful, and offer a clear value. However, development and testing in the Cloud is one of the easiest ways to actualize the benefits the Cloud can provide. By utilizing the Cloud for your development projects you immediately save time, maximize efficiency, alleviate frustration, and increase the overall value of your code.

All development projects start with a development environment. A development environment does not consist only of an IDE. It consists of hardware, operating systems, software licenses, APIs, and your favorite IDE. The challenges with local development environments are: 

1.) Costly infrastructure: Though the relative cost of computer hardware has dropped dramatically over the years, the cost of ad-hoc development machines is still considerably high. The reason for this is because development environments are not consumed the same as work machines are. There are additional costs associated with software licenses, high-performance hardware, more robust hardware, or pushing hardware limits with a local hyper-visor. Not to mention the opportunity cost associated with using a local machine as a development machine versus a line of business machine.

2.) Limited amount of resources: Most local development environments are not ideal, or remain useful for a limited time. For this reason developers find themselves with too little memory, too little processing power, and having to upgrade regularly. If the project is server related, most local machines are not capable of running server grade software, or applications without heavy hyper-visors.

3.) Environments are used for more than development: Unfortunately, it’s hard to justify dedicated hardware for development projects. Very often developers not only have their IDEs on a development machine. They also have their email clients, their favorite web browser, etc. This may interfere with the development environment. It can be avoided by having a local hyper- visor. However, this puts an even greater burden on the hardware and performance of the machine.

4.) Environment contamination: Because it’s hard to silo development environments, an environment is often contaminated with past projects, APIs, hot-fixes, or other software that could otherwise interfere with the development process. This contamination is often hard to spot when it causes issues, and a common instigator of extreme frustration.

5.) Transition to demo: Even when having a local development machine is successful, transitioning from development to testing, staging, demo, or production can be tricky. Often it’s not just a matter of copying code, it’s also necessary to make sure all pre-requisites are installed, configurations are correct, and the downstream environment is as identical to development as possible. This is often a manual process.

Having a local development environment in the past had only the real advantage of convenience and performance, but anymore this is not the case. Enter the Cloud:

1.) In the Cloud you get the latest hardware and performance: Cloud providers like CloudShare leverage the latest hardware and software. At CloudShare, we are able utilizing economies of scale to leverage the latest and greatest in high-performance hardware and software. Not only that we have put specific R&D effort into accelerating the performance of our hardware and the delivery to you over the internet. Leaving the user feeling like the machine is right in-front of them. Many users remark how using CloudShare virtual machines actually out-perform their local hardware.

2.) In the Cloud deploying pre-Installed licenses is easy: How many times has the completion of a software install slowed you down? The Cloud infrastructure allows cloud providers to pre-install critical software. At CloudShare, we identify for you the most common development environment software, and pre-install it for you. We pre-install the operating system, Office, SharePoint, Visual Studio, for example. We also offer Linux, Eclipse, and other common development environments. This means you have to spend zero time or effort thinking about software. Not only that the time it takes to install all that software is significant, with CloudShare we reduce the time dramatically.

3.) In the Cloud it’s easy to replicate and start over: Sometimes things go wrong in development, and often when they do the best thing to do is just start over. This can be extremely frustrating. In the Cloud, it’s easy, and frustration free. With CloudShare its four steps and 15 minutes, not hours, or days. If your development environment has gone sour, simple delete it, and start over with the same VM template, or a snapshot of a pervious version. Easy!

4.) In the Cloud you can silo development environments: Imagine how nice it would be to have one development environment per project. Keeping all configurations, and code separate. Allowing for multiple projects to go on at once without concern of interferences. With CloudShare, you can fully silo all your development projects with ease by creating a VM or even a complete environment for each project. This allows you to easily manage the progress of one project and keep projects from impacting each other.

5.) In the Cloud projects are contamination free: Now you can fully separate your local work machine from your development machines without the added overhead of a local hyper-visor. In CloudShare, you can separate your development tasks from all your personal and business applications. This prevents the use or existence of these applications from interfering with development. Not only that, one project’s pre-requests will not impair an others.

6.) In the Cloud you can scale on the fly: Use the hardware you need when you need it. You can toggle how many CPUs, how much memory, how much hard-drive space you need for your development environment. With CloudShare, if you need to max out hardware for performance testing, you don’t have to be committed to it like you are with a local machine. Simply throttle your hardware resources up and down as you need them.

The Cloud is now even better than you thought it was. It is not just about production business applications anymore. It’s a more efficient way to develop your applications. Throw away clunky hyper-visors, and stop thinking about computer hardware and software license during your development projects.

Chris Riley
Chris represents the coders and practitioners that use @CloudShare as technology evangelist. He fancies himself a technologist & and a recognized industry expert in Content Management, Information Architecture, BigData, Text Analytics, and Cloud Virtualization. He commonly speaks and authors content on these topics.
Facebooktwitterredditpinterestlinkedinmail
Chris Riley
Chris represents the coders and practitioners that use @CloudShare as technology evangelist. He fancies himself a technologist & and a recognized industry expert in Content Management, Information Architecture, BigData, Text Analytics, and Cloud Virtualization. He commonly speaks and authors content on these topics.

Leave a Reply

Your email address will not be published. Required fields are marked *

Subscribe