Over a million developers have joined DZone.

Force.com and the Uber-Democratization of Programming

· Cloud Zone

Download the Essential Cloud Buyer’s Guide to learn important factors to consider before selecting a provider as well as buying criteria to help you make the best decision for your infrastructure needs, brought to you in partnership with Internap.

In the last few weeks I’ve started to riff on James Govenor’s meme, that of developers becoming the new kingmakers. I recently wrote a post discussing what I saw happening with Salesforce – how the combination of force.com and Heroku was creating a real gravity pull for developers and that Salesforce was primed to be at the epicenter of this development. A number of people pushed back on that theme, in particular questioning how force.com – a business centric PaaS that is admittedly highly proprietary, can constitute anything compelling for developers.

Not being a developer – my comments come from a business perspective. That might be anathema to most developer purists, but I sense that what we’re seeing with high level PaaS’ like force.com (and, for that matter, the other SaaS-based highly flexible platforms, is an uber-democratization of development that will prove even more revolutionary for developers and business than IaaS has been for operational teams within an IT organization. That’s the reason I started differentiating application PaaS (aPaaS) from infrastructure PaaS (iPaaS)

Let’s see how that works. With cloud, organizations no longer need to think about procuring, racking and stacking servers. Rather they obtain their server needs on a utility basis from a cloud provider (in the case of the public cloud at least). CapEx is removed, the need for large operational teams goes, and all of a sudden the ability to acquire server time moves from central IT, down to tech teams within a business unit. All fine and good so far, but let’s get to the next stage, PaaS.

In the old days, a business that wanted to, for instance, create a custom application that integrated with its ERP or CRM, would have needed to engage a developer with a deep understanding of both development languages and the hooks into the software package being integrated with. With aPaaS that is no longer the case. The platform itself is built upon the application and hence is already integrated with the core data the organization is trying to use. The language is easy enough for most business people to use and hence they do, creating applications at will.

This concept, of aPaaS being the catalyst for massive democratization, was well articulated in a recent post that went out on a significant limb by saying that “Force.com is the next Visual Basic”. Rather than an insult however, the author stresses that reactions to force.com replay many of the those that went alongside the introduction of VB a couple of decades ago:

  • Most professional C++ programmers dismissed it. VB was a “toy language” or a “glue language” for components – not for serious software development.
  • Increasing number of software engineers embraced the language because, to put it simply, when it came to desktop applications you could be an order of magnitude more productive in VB than in C++. It may not have had the stature and features of a “real” professional language, but it sure was profitable to work in it.
  • VB was easy enough for anyone to use, so everyone did. Doctors, lawyers, students – millions of VB developers sprang up out of nowhere and wrote a lot of code. Much of it was very bad code, but that’s what happens when a bunch of amateurs get in the game. Entire book, magazine and training industries grew up to help them get better, and many of them did and built entire careers around the platform.

The very reason VB was productive is important to remember in light of the rise of PaaS generally and these high level aPaaS’ in particular. The original post detailed the traits that force.com shows that were so starkly on display at this year’s DreamForce:

  • A web based GUI environment that provides a high level of abstraction for developing real applications that seamlessly integrate core features like database, email, reporting, the web, chat and mobile.
  • An environment that lets you do a great deal without code, but provides the language and “hooks” that allow serious programmers to go much farther.
  • A flood of non-programmers who are using the environment to solve real problems, and who are stumbling into actual programming.
  • Lots of truly awful code being written, so there’s a huge need for training and a thirst for knowledge on how to do things correctly.
  • A language and platform that doesn’t seem to get much respect from the “real” programmers doing Java, C# or other languages, even though the demand (and pay) for Force.com and Apex programmers is huge.

It is true that, just like VB being under powered for some applications and needing a product like .NET to fill the gaps for particular needs, so too does force.com have its limitations. We’re always going to see “real” developers do the complex stuff – just look at the amazing number of applications being built of Heroku, AppFog, EngineYard et al – but that’s not the key point here. The key point is that the number of people globally who are now developing applications is ballooning, while the number of so called “professional” developers remains fairly stagnant. The thing that allows this to occur is a democratization, an increasing utility and, yes, a return to the simplicity of the Visual Basic days. It may not be a “real” development tool, but it’s one that is changing the very essence of what development is.

The Cloud Zone is brought to you in partnership with Internap. Read Bare-Metal Cloud 101 to learn about bare-metal cloud and how it has emerged as a way to complement virtualized services.


Published at DZone with permission of Ben Kepes, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}