Do It Yourself! The Citizen Developer

Application Development

Imagine if every time you wanted to make the smallest repair or improvement to anything in your home, you had to call in a professional handyman to do the work for you. Sure, it might result in one or two improvements being made that you might not have been able to perform yourself. Overall, however, it’s clear that calling in a professional to hang up a picture or stick a piece of peeling wallpaper back up would be, at best, time consuming, horrendously expensive and outrageously inefficient.

Those wishing to develop or alter business applications have found themselves following a surprisingly similar model for the past 30 years. What typically happens in this scenario is that a user notices a problem or opportunity that could be solved, then calls an external or internal development team and tries to define the issue and how it can be solved.

This team then goes off and creates the app it thinks was being requested. Several weeks later the user gets their app and, often, it’s far from what they wanted, while they may also find that the price is far higher than they were originally anticipating. So what’s the solution?

In the 1970s, a new craze spread like wildfire across North America, known as ‘Do It Yourself’, in which people felt empowered to take on everything from making clothes, maintenance of cars or home improvement without expert help.

It’s no exaggeration to say that, with the help of new tools, a similar thing is happening in today’s businesses, providing them with a metaphorical workbench and tools that enables them to do things themselves, quickly and efficiently. It’s a clear and tangible part of one of the biggest trends set to take the world of business by storm over the next couple of years: The Citizen Developer.

Gartner defines The Citizen Developer thusly: “An end user who creates new business applications for consumption by others using development and runtime environments sanctioned by corporate IT.” Indeed, as recently as 2011, that same analyst house predicted: Citizen Developers Will Build at Least 25 Percent of New Business Applications by 2014.

Most big trends need the two things to coincide: a large public appetite and a mature technology. For enthusiastic business people the taste for creating tools has always been there – the emergence of cloud and its enablement of Application Platforms as a Service (aPaaS) has brought tools have made DIY business application development a reality.

Where previously a developer would have to set up multiple layers to even begin building an application, today’s cloud solutions abstract almost all of this. It gets around the need to set up physical infrastructure or application platforms (like a web server).

Applications are typically hosted on cloud today, which initially started with software being available as a service (SaaS). Businesses are now comfortable running applications on hardware servers (IaaS) and application platforms (PaaS), which are then managed by external entities on the cloud (IaaS). This barrage of acronyms has led to the next step of simplifying how applications are build on the cloud and for the cloud – Application Platforms as a Service (aPaaS).

In aPaaS, applications are developed using simple web-based development tools and then deployed on the cloud without the need for programming code. Using simple visual development tools that are graphically based on a ‘drag-and-drop’ development model.

These models can take in a range of inputs such as intuitive and close to business artifacts like data objects (spread sheets or files), forms (that are much like normal printed forms), business flows (operating processes) and reports. All familiar to a business user that understands the business operations and flows he needs. A typical end user (citizen) can now build (develop) his own application.

Now ask yourself – who would you rather develop for your business? A person who is familiar with your organisation and has a strong incentive to improve its performance? Or a developer sat offsite who doesn’t know the first thing about what you do?

Don’t get me wrong, – this is not a ‘one size fits all’ solution. I’m not suggesting that every app is, or should be created this way in the future. Clearly, there is always value in having technical experts particularly when a project gets big or complex.

If you need to do a small amount of painting, to return to the earlier DIY analogy, you might feel confident of being able to take on the job. But if you were thinking of knocking down some wall and completely restyling the layout of your home, you might be better off calling in the experts.

Just like the much-hyped big data movement, the true power of applications will only become apparent when the ability to make them can be put in the hands of everyone. What have you been working on today? What challenges have come up in your industry over the past six months?

Remember that the tools exist for you to address these challenges and use them to create a tailored solution that meets your own specific needs. Perhaps if The Citizen Developer has taught us anything it’s that we shouldn’t be too over-reliant on the ‘experts’, no matter how minimal our expertise is in a given area – whether it’s application development or home improvement. Got a problem, and need it fixing? Why not do it yourself!

Ramesh Loganathan

Ramesh Loganathan is Centre Head & Vice President of Products, at Progress Software's Hyderabad labs. Ramesh started the first Progress Hyderabad team of 20 engineers building a new product from scratch in 2004. He returned in 2008 as Centre Head and is responsible for restructuring the centre into Centres of Excellence model with each centre owning a tech horizontal and engaged on multiple products in that area.