Tuesday, September 29, 2015

Developing in the Cloud: an Introduction

people developing in the cloud

Every web developer needs to set up a development environment—a set of tools to work with, such as

  • a code editor
  • a version control system (such as Git or SVN)
  • build tools and/or package managers
  • DevOps and provision tools (Docker, Puppet, Ansible, Vagrant)

… and so on. Having a good setup is crucial for maximizing productivity.

Development stacks vary from developer to developer, and can depend a lot on a developer's field of work. However, there are some pretty typical setups. SitePoint has recently published examples of local development environments for Linux, Windows and Mac.

In this article, I'll take a look at a fourth kind of development environment—one that's based wholly in the cloud. This will normally happen through a third party service, and there are quite a few to choose from—such as Cloud9, Codenvy and Nitrous.

Advantages of Developing in the Cloud

When using a cloud development environment, you're actually a client of a development platform as a service (dPaaS)—which offers a lot more than just an online code editor.

Faster setup
Firstly, developing in the cloud reduces the setup time. Usually you can use your framework of choice, or use boilerplate code structured as it should be, and all that is done by only clicking some buttons.

Access from Anywhere
You can code from any computer, as long as you have an internet connection—whether you're using the latest iMac, an old Netbook or even a tablet.

Remote Pairing
One of the features I love about these environments is remote pair programming. Cloud IDEs allow more than one developer to access the source code at the same time. You can see each other write code, test and chat in real time.

Multiple Installs
I recently had a problem with a Scala application. The dependencies just wouldn't install. It turned out to be because I had Java 8 installed, while some of the dependencies required Java 7. I did't want to downgrade, since it would probably affect other applications, so I decided to go on with a Vagrant config. Well, if you're in the cloud, you don't have to do that. You can require a container for each application you develop, and the container will be just like you want it to be (Java 7 in this case).

Continue reading %Developing in the Cloud: an Introduction%


by Aldo Ziflaj via SitePoint

No comments:

Post a Comment