Solving The Developer Deficit In The Cloud

Editor’s note: Ruben Daniels is CEO and co-founder of Cloud9 IDE, a leading cloud-based Integrated Development Environment (IDE) that enables web and mobile developers to work together and collaborate in remote teams anywhere, anytime.

Software is taking over the world. This sentiment has become widely accepted throughout the tech community, most notably examined in depth by Marc Andreessen last year.  However, as software continues to infiltrate nearly every industry, there’s a serious consequence taking shape. The demand for development continues to grow exponentially, but the amount of qualified developers that are available to produce this commodity is not. Simply put, the world is running out of developers.

It’s no surprise that we’re seeing more investments being funneled into development technologies. It wasn’t long ago, however, that the general consensus was that making money in the developer space was hard. This thinking has started to shift with big investments in companies like Atlassian, Cloud9 IDE, Codecademy, and recently GitHub and Meteor to name a few.

It’s a nice start, but this is only the beginning of what’s to come, and with good reason. There is a big problem to solve in this space: we need to figure out how the developer community will be able to take on the enormous workload that is fast approaching. As software becomes universally relevant, developer effectiveness will become both the limiting factor and the competitive advantage for every industry.

What’s the solution?

One approach is to ramp up on developer education. With the increasing demand for developers, growing the pool of qualified talent is an obvious solution. Combine this with the present unemployment rate, and the opportunity that the modern web offers those who want to learn coding, and you’ll arrive at companies like Codecademy. Not only do they address the developer shortage problem, they help the economy at the same time. Realistically, however, this will increase the developer pool by a few percent at best. So, let’s look at ways to make the current developer pool more effective.

We all know the old adage “Work smarter, not harder.” For developers, there are two ways to work more effectively. The first is to start writing less code. Increasing the use of dynamic languages is one way, but we are seeing new initiatives that take this path to a whole new level. Companies like Meteor, Opalang, TypeSafe and Appcelerator are focused on improving productivity.

They have come up with innovative new ways to abstract away code writing and management, so that developers spend less time building complex web or mobile applications. Meteor, for instance, abstracts the network layer from the developer allowing code to be easily written as if it ran on a single system. Consequently, because the number of bugs grows exponentially with the size of the code base, decreasing original code writing inherently improves developer effectiveness.

The second way to increase effectiveness is to improve workflow so that developers can build better features faster. New and innovative tools can remove many of the mundane tasks that developers do on a daily basis, and provide the infrastructure to iterate toward a true solution without many sidesteps.

Companies like GitHub, Cloud9 IDE and Sauce Labs are paving this path. Where in the past companies like SpringSource and JBoss only had the open source services model to make money, nowadays the cloud provides a way to monetize much earlier and in a more straightforward way. GitHub is a classic example where, unlike its predecessor SourceForge, it has managed to leverage a successful subscription based freemium model for its service.

Up until now, innovation in the developer tooling space has been at a stand still. Now that there’s an opportunity to make money using cloud technologies, developer tools have become a viable business once again. There’s a sea change happening, which is why investment dollars are moving into developer solutions.

The Cloud Effect

Let’s take a closer look at how the cloud is transforming developer tooling. For the past 20 years or so we’ve seen the dominance of desktop tools, integrating many different types of tools in a single application. These so-called integrated development environments (IDE) all originate from the late 90s, early 2000s. The world has seen big innovations in user interfaces since then, as well as the coming of cloud and the evolution of agile software development – but not in the world of IDEs. The transition to the cloud requires a full redesign of the IDE, and we now see a proliferation of new ideas. Light Table recently showed how a new UX paradigm can help developers get immediate feedback when writing code. Based on ideas popularized by Bret Victor, these innovations can help developers focus on the creative part of application development, while inadvertent bugs are quickly caught.

By moving development to the cloud and offering the IDE as a service to developers, a significant amount of their workload has been removed such as downloading and installing the IDE and SDKs and managing their workspace. Without the cloud, developers have to be a system administrator for their own laptops. This is time that is wasted not writing code. The workspace is ready to use the second you log on with cloud IDEs, and these cloud-based workspaces give rise to many new workflows. A developer can easily share his or her workspace with colleagues, getting help when he or she is stuck.

Sharing is one of the popular operations that the web has made possible. Just send the URL to someone else to give that person access to your workspace. Cloud IDEs can make remote developers feel like they are sitting next to each other while writing or debugging code; in the same way Google Docs does for office tools. This not only saves time, but any constraints in forming remote teams will dissipate, and that will increase the ability for organizations to hire the best person for the job, regardless of their location. There are millions of developers working in remote teams that have already benefited from solving issues together in minutes, rather than hours or days.

The first cloud revolution promised flexibility by abstracting the hardware layer and allowing easy creation and destruction of virtual machines (VM). The second cloud revolution abstracts the VMs away and allows the developer to simply deal with the application runtime and services.

This revolution is happening right now and cloud IDEs play a pivotal role in removing the friction between development and operations. This so-called “dev-ops” is the promise to move some of the operational responsibility to the developer, in order to gain quick release cycles. The benefit is that developers can create and deliver features on their own without drag from process or organization. This drastically increases turnaround time and overall agility. Unlike the waterfall approach of the past, where full specs were written in 100+ page documents, dev-ops completes the agile vision whereby developers can shape and form applications by getting continuous feedback from users. A cloud IDE will be the nexus of all this activity, a central point to write and deploy to the cloud and learn from users.

Who Wins?

Big enterprise will be the big winner here. Enterprise is under pressure in the current economy; everyone is looking to create things faster and drop their internal overhead. Outsourcing, insourcing, right sourcing – it all means dealing with a dynamic workforce. A cloud IDE is uniquely positioned to gather all these resources in a team structure that works. The associated management overhead can be driven down drastically with the use of cloud-based developer tools. Just log in and you are good to go.

The developer space must adapt to deal with the growing demand on developers. The investments that we’re seeing right now are just the prelude to the enormous wave of innovation that will be created to deal with this growth. The software industry is relatively young, but the world has managed to withhold innovation for developers for a decade. You can feel the ground shaking. It is going to be amazing to see what will come and how this innovation will transform all industries worldwide.