Why the ‘Infinite Citizen Developer Theorem’ Is Doomed to Fail

Don't wait for the back office version of 'Hamlet' to eventually emerge. Rami Tamir, Co-Founder and CEO of Salto, has plenty of ideas on how to prevent "business system chaos".

Have you ever heard of the infinite simian theorem? It’s mathematical proof that suggests that a chimpanzee working at a typewriter for an infinite amount of time would have a non-zero chance of producing the complete works of William Shakespeare. It plays with the idea that on a long enough timeline, anything is possible, and order can miraculously emerge from disorder.

Most enterprises do not have infinite time and resources. Yet they’re pursuing a similar theorem with their internal SaaS applications. Most of the people within companies purchasing SaaS are so-called “citizen developers” – not IT people. Most enterprises now have 800+ applications, only 27% of which are picked and managed according to a central plan, or IT.

The hope, one supposes, is that the back office version of Hamlet will eventually emerge. But I think companies that want to guarantee success could use some sort of business application editor with oversight, and I have ideas for what that role should include.

The Great Unstoppable Tide of Business System Chaos

I am not against citizen developers, or anyone purchasing SaaS to make their own lives easier. Just the opposite. I think this trend is one of the great triumphs of modern organizational behavior. Who knew that the “best-of-breed” theory – where every business unit gets to choose the applications that suit them – could take us as far as it has?

There was a time when to support a CRM, ERP, HCM, or ticketing system meant having dozens or hundreds of full-time developers behind it. Now, such systems require far fewer people, and that’s all thanks to the no- and low-code revolution. Folks in the business unit can, through the UI, launch and rewrite software like Zendesk or Jira without help or knowing how to code.

The only problem I have is that few of these people have been trained as developers. You can be a developer without knowing how to code, just as knowing how to code doesn’t make you a developer. It’s less about code-writing and more about being trained in engineering.

As Salto’s CTO Gil Hoffer has explored extensively, software developers have been building knowledge, frameworks, and systems such as Agile and DevOps since Sputnik. These frameworks reduce effort, increase software quality, and guard against error. They ensure that something one person builds will work with what someone else builds. Being a developer means using those frameworks. But citizen developers don’t know them.

And whereas citizen developers are each working alone, in an ad-hoc fashion, developers know that:

  • Systemic order rarely happens by accident
  • If many people can make changes, they need a way to coordinate
  • As the code base grows larger, there must be a way to inspect it
  • If you want multiple systems to interoperate, they need a shared language
  • There’s no way to avoid human errors, so you need safety checks
  • There’s no way to avoid human mistakes, so you need the ability to roll back changes
  • If you want to work efficiently, you need the ability to copy and save your work

When citizen developers purchase SaaS to address small, local problems, they do so without a global understanding of how it affects the entire business. A small app that can read and write data in Zendesk can also delete customer data, which can then update to the ERP and cause accounts to go unbilled. The ramifications are very real.

I believe that “infinite citizen developer theorem” for your business systems cannot succeed unless someone with an overall blueprint is responsible for guiding development.

Business Systems Require Business Engineers

I’m a proponent of a new role that we at Salto call the business engineer. They fill that critical role of coordinating all those SaaS purchases, deployments, and development. Like a peace officer guiding traffic, they may slow individuals down, but they’ll speed up the whole business. They can define field naming conventions, tamp down tech debt, and take a long view on what all that SaaS is trying to achieve. Without them, you get into situations where the entire company is paralyzed over deleting a field in Zendesk or NetSuite because nobody actually knows what will break if they do.

The idea behind the citizen developer revolution is a good one: each SaaS buyer should get to decide how best to solve their own problems. Business engineers ensure that happens, without it coming at the expense of the entire company.

And sure. Citizen developers with an infinite amount of time could, eventually, produce a perfectly organized and tech debt-free back office operation. But I have yet to see it. And if you want to ensure back office order, I’d say they could use help.

By Rami Tamir, Co-Founder and CEO of Salto.

He is a serial founder who sold startups to Cisco, Oracle and Red Hat for over $700 million (£518 million). Salto was founded in 2019. The company brings concepts and methodologies from software development and DevOps – the use of structured language, version control and automation – into the business operations environment.

Guest Contributor
Guest Contributor
Follow on Twitter @eWeekUK

Popular Articles