Announcing Coherence 2.0 and CNC, the first open source IaC framework
All posts

The Future of Code and No-code

Can we build tools that are from the future, but are for the workers of today?
April 14, 2022

It’s become common wisdom that everyone’s going to be a software creator eventually. Accessible programming languages date all the way back to the earliest research done in computer science, and visual UI builders for code aren’t much newer. These days, products implementing these strategies are often referred to as “no-code” tooling.

The no-code movement has two opposing goals. One is to enable people who can’t program to access the power of automation and specificity that the computer provides. Another is to enable developers (who can program) to write more maintainable code more quickly. These goals are in tension because the configurability required by professionals and experts is at odds with the needs of novices and amateurs to have simplicity and comprehensibility. Spreadsheets are the canonical example of the software programming for people who can’t program, and the expansion of the category to programs like Wordpress and other CMS/site-builder platforms (Wix, Squarespace) has been wildly successful. Where the line between office work, programming, and frameworks is exactly remains a matter of debate. 

No-code does a great job at two things: providing a much less arcane UI, and deeply abstracting the devops work away from the code. The first one matters: ask any fan of a typed language how many bugs it has saved them from, or one of a compiled language how many times a typo was caught. Many software veterans can attest to how much time they’ve wasted on syntax and style. However, most people who’ve tried to work as programmers understand that the hardest part of building software is understanding the current and future needs of users and how they interact with the rest of the system––not writing the code itself. 

But what if you could write the same code without tangling with the web of duct tape onto which we build and deploy software today? How do we abstract away some of the distractions we face in order to focus on the hard parts of the job?

No-code has some wonderful developer experience properties. You don’t have to think about git or build pipelines. The dev environment is automated, disposable, and discoverable. You don’t have to worry about scalability or the security of your deployed apps. 

That said, we don’t want to lose the proven expressiveness of code. There are millions of devs with the skills, so why wouldn’t we leverage them––by empowering them not with no-code tools, but with no-code benefits? Can we build tools that are from the future, but are for the workers of today? That streamline a well-integrated and complete toolchain, and make people who are writing code more productive and capable? We think we have, and we're excited for you to give it a try.