Return to site

Citizen Developer

Digital innovation: by the citizen, for the citizen.


Ian H Smith

There has been much talk about how the emergence of the Citizen Developer can accelerate digital innovation. Today, we see digital innovation talked about everywhere, but, as citizens - have we seen much improvement in our everyday lives, as a results on digital innovation? I think that the answer is: no, not really.

I think that the failure of digital innovation to solve everyday problems in our lives is to do with the persistent gap between what IT organisations deliver, and what consumers, as customers truly need from a bank, an insurance company, a mobile network operator, or an energy supplier.

With Design Thinking applied, could we close this gap between IT and the consumer customer through empowering business people and customers to design enterprise apps that work the way they think and work? Could this be digital innovation: by the citizen, for the citizen?

In this blog post I talk about my own journey towards enabling the Citizen Developer: working with an emerging technology platform and applying Design Thinking to what is a very challenging, yet will become a highly rewarding outcome - in the pursuit of faster, cheaper and better digital innovation!

Beyond Web 2.0

Way back in 2004, Tim O'Reilly popularised there term 'Web 2.0', describing Websites that enable non-tech people to generate content without the need of expert support. Since this time, we have seen the emergence of Citizen Developer-enabled platforms for Web design and publishing, including WordPress, Wix, Squarespace and Strikingly.

However, despite the wide availability of such technologies for Web design and publishing, we still see large enterprise IT operations clinging to the belief that Citizen Developers are not part of the mix - and at best, the only place that non-tech employees are permitted to create and publish content Web 2.0-style is via Content Management Systems (CMS) and blog platforms.

Code, Low-Code and No-Code

When I talk about digital innovation, I like to segment the underlying choice of technology as one of three categories: Code; Low-Code; or, No-Code. Whilst we all have our biases towards different technologies, I think that each category has its place - but No-Code, for me, is still a work-in-progress - and a very demanding Design Thinking challenge!

In recent weeks I have spoken out against Low-Code Platforms as enablers for non-tech people to create and publish enterprise apps in the cloud. The truth is, today's Low-Code Platforms are enablers for Rapid Application Development (RAD) - not tools for Citizen Developers. Low-Code Platforms are important, they allow enterprises to avoid the cost and complexity of ground-up Code-based app development. Examples here are Appian, Mendix, OutSystems and Simplicité.

Code is always there, of course, even for a Low-Code Platform and what, ultimately, underlies a No-Code Platform. Code will always be required and this is the central argument for Low-Code: use visual, non-syntax development where you can - and when you hit the limits of visual development, you revert to Code. For a No-Code Platform this statement does not apply: this is the quest for enabling the Citizen Developer, who cannot revert to Code, and wants to create and publish enterprise apps - all without writing a single line of Code. This is easy to say, but hard to do!

Citizen Developer Thinking

In creating a No-Code Platform, Hatch Apps are a startup taking a different path to the late majority players who make-up the Low-Code Platform space. My work with Hatch Apps is all about how we create an enabling technology that truly works for the Citizen Developer, and where Design Thinking informs a continuous process of creating and improving a truly No-Code user experience.

Low-Code Platforms like Simplicité are great for increasing the productivity of the IT department. For Citizen Developers, we need something very different with a No-Code Platform. Ultimately, we will see an optimum blend of Code, Low-Code and No-Code, but in this latter category, we have to break new ground in user experience (UX) design.

In following the principles of Design Thinking, we need to start with the Empathize step. This means identifying who a Citizen Developer is, or could be. Let's not hide behind the vague, IT-centric language of talking about 'tech-savvy' users, and instead be more specific about the who this 'User Persona' really is.

We need to think of the Citizen Developer as a real world business person, maybe an entrepreneur, maybe a manager in a large enterprise, maybe a subject matter expert in a small firm - and how they think, in relation to creating a new enterprise-class mobile or Web app. As we research this class of User Persona, we realise that this is a range of User Personas, within an overall category of would-be Citizen Developers.

At one end of the scale we have the Citizen Developer who is able to design a new enterprise app from basic modules and components, with sufficient inherent design skills to know how to build from a 'blank canvas' starting point. At the other end of the scale, we have the majority of Citizen Developers, who need to work with prebuilt app templates. In many team environments, we must accommodate many levels of design and tech skills and create User Interfaces (UIs) that are mapped to these specific User Personas - and enable team-based collaboration among all.


Citizen Developer Thinking is non-trivial Design Thinking and here is where I like to apply three Design Principles to guide the creation of the No-Code Platform User Interface (UI):

  1. Meaningful Journey
  2. Fierce Reduction
  3. Progressive Disclosure 

#1. Meaningful Journey

When designing a next generation SaaS app, the first thing to create is its journey: the path, steps or tasks that users will complete in providing a service, undertaking work or solving a problem. With Lean Thinking at the heart of the design, this means removing steps or tasks that are wasteful or unnecessary. Therefore, this journey must be a Meaningful Journey: from the moment a user goes to the login page, to the moment they logout, when the task(s) or work is done.

#2. Fierce Reduction

When users get confused with SaaS apps, it's usually because what they are confronted with on a page view offers too many choices of what to do next. Often, there is no obvious place to go or action to take from a particular stage in what should be a Meaningful Journey. What's needed is a fiercely reductive mindset: a way to eliminate everything on each screen that distracts from any action at each stage. This is Fierce Reduction.

#3. Progressive Disclosure

When designing a Meaningful Journey and applying Fierce Reduction, it is better to have more clicks or swipes through pages of a SaaS app, than add too many options in any given page or screen view. This means that with a fiercely reductive mindset, you will have to engage in a trade-off between simplicity of page or screen view, versus the number of pages on a Meaningful Journey. This is ensuring that Progressive Disclosure is applied to SaaS app design.

Citizen Developer Empowerment

Even in the smallest of organisations, the IT department has responsibility for ensuring that digital innovation is delivered in a stable, safe environment. In larger enterprises, IT departments may be too remote from what customers or employees truly need, but they cannot simply be bypassed and all ongoing digital innovation turned over to Citizen Developers in a free-for-all.

No-Code Platforms must be part of a secure cloud infrastructure, where Citizen Developers are able to create new mobile and Web apps that IT professionals can approve and deploy, from an operational and security perspective. This collaboration between business users and the IT department removes the notion of 'shadow IT' or No-Code becoming a form of anarchy within the enterprise (of any size).

What also matters with a No-Code Platform is that it's built with industry-standard Code and runs on safe public cloud infrastructure, where choice of location enables support of specific, named country Data Residency. With Hatch Apps, these key questions are answered: building the No-Code Platform with React and Node.js JavaScript technology - and running on an Amazon Web Services (AWS) Infrastructure-as-a-Service (IaaS), which can be configured on country-specific instances.

Summary ... So Far

I am at the beginning of our journey in participating in the creation of a No-Code Platform that truly delivers for the Citizen Developer. So far, the user experience (UX) design work shows just how challenging this goal is.

What matters here is that in pursuit of No-Code, we avoid creating yet another compromised Low-Code Platform, with the caveat that users must be 'tech savvy' or where extensive investment in training - or worse still, 'certification' must be mandated for the Citizen Developer.

For sure, as we go on this No-Code journey, there will be more to follow ...

All Posts

Almost done…

We just sent you an email. Please click the link in the email to confirm your subscription!

OKSubscriptions powered by Strikingly