I have been a strong proponent of citizen development, though I've been using other terms for it on this blog. Self Service BI is a form of citizen development and a strong practice is a key ingredient to becoming a data driven organization. I also wrote The Best Line of Code is the One That You Didn't Have to Write! referring to PaaS platforms that enable application development with no or little coding required. I heard the term at last week's conference for Intuit QuickBase, one of the best platforms for citizen development of database driven web and mobile applications.
Why Citizen Development?
Gartner predicted that Citizen Developed applications would be 25% of new applications developed by 2014. I suspect the percentage today is lower than predicted, so here are a few reasons why this trend may take off in the next few years -
- Understaffed IT Departments with greater business demand fro technology services - I've never seen an IT department with adequate resources and funding to tackle all the demands of the enterprise or organization. We spend significant effort to prioritize, identify business value, formulate risk scores, and calculate ROI to insure we tackle the most critical opportunities knowing that we can't manage every need and request equally and simultaneously. So one reason for citizen development is to handle technology needs to automate workflow, develop knowledge repositories, construct reporting dashboards, or process data in domains that are difficult for IT to service. Very often these are operational groups, finance, and marketing who have significant technology opportunities but are too often ranked lower in business priority.
- DIY by SME's vs. IT's ability to capture requirements and execute solutions - It's also no secret that IT often fails to understand and translate business requirements adequately. When deep subject matter expertise is required to facilitate a relatively easy to implement technology solution, it can be a lot more efficient for a citizen developer working in the organization to develop a solution. Examples include data driven dashboards, departmental specific task management, lightweight CRM, or no-code content management systems (CMS).
- No/Low code solutions should be easier and cheaper to maintain -The reality is that custom developed applications can be expensive and many organizations underfund their ongoing support. Typically, the application development team is asked to go on and build new applications, leaving limited applied resources to enhance or upgrade older applications. In addition, the rate of adding new applications is often faster than the rate legacy applications are retired. Citizen developed applications are largely low or zero code configurations and often deployed on SaaS or PaaS platforms. These applications should require less maintenance and are more likely to be enhanced if they are mission critical to the citizen developer's organization.
- Emergence of tech savvy business users and functions - Finally, I believe there are technically capable individuals entering organizations in non-IT functions that are interested in taking on more technical responsibilities. They include data scientists working in analytical functions, data stewards working in operational functions, sales operations managers, or digital marketers. Given the right platforms, practices and governance these tech savvy users can become citizen developers.
So What's The Catch?
Needless to say that citizen development can easily become a next generation IT nightmare. A good quote from Citizen Developers Will Ruin Software
Citizen developers are only concerned with their immediate environment, looking at the problem that they are trying to solve so they can do their job, rather than seeing it in the context of the wider IT ecosystem.
I'm not sure I believe this has to be the case. Like all other technologies, it requires IT leadership to provide governance, practices, and guidance for technologies used by citizen developers. More in my next post!