The trend toward low- and no-code applications is worth paying attention to, but what will it mean for those of us who write code for a living?
I started my software development career as a freelancer building WordPress sites for local businesses. At the time, solutions like Squarespace were somewhat limited, so many small businesses still hired software developers to custom code their sites. Using WordPress gave me a huge leg up on developers who built websites from the ground up because I was able to create a fully functional site in days instead of weeks.
"People used to charge $400 an hour to write HTML, and now we have Squarespace. For $9 a month, you get a complete website," says Peter Piekarczyk, founder and CTO at Draftbit, a low-code solution for mobile app development. "Even when I started working in React Native, I could charge $250 an hour, but that's getting harder and harder."
Piekarczyk's company is one of many new players in the expanding no-code space. Draftbit's visual builder generates React Native code that developers can export to create a custom mobile app in days instead of weeks, but some no-code application builders go even further.
Any web or mobile application created without writing custom code could be called a "no-code" app. Examples include websites created on platforms like Squarespace and Carrd, internal applications built in Airtable and Sitefinity, or automated processes running on Zapier.
Many of these solutions have been around for a while and are quite mature. "If you're still hand-coding websites right now, I'm sorry. I just don't see the need for that," says Lacey Kesler, co-founder of Visual Dev. Lacey teaches non-technical founders to use no-code app builders like Bubble, Glide, and Adalo to create early versions of their mobile or web app.
Some application builders work with developers rather than to replace them. Webflow, Draftbit, and UI libraries like Kendo UI might be called "low-code" tools because they still require integration by a developer to get the most out of them.
Building prototypes with no-code tools is a great way to get started, but these tools aren't just for startups. A Gartner forecast stated that "by 2024, low-code application development will be responsible for more than 65% of application development activity" across all sizes of companies.
In the enterprise space, business process automation is getting more attention. Companies with lots of defined, repetitive processes are using tools to gain a competitive edge without building custom in-house software.
The trend toward low- and no-code applications is worth paying attention to, but what will it mean for those of us who write code for a living?
"The emergence of low- or no-code development is raising concerns among developers—our core audience—about the role of non-developers in software creation." - Gabe Sumner, Telerik
Anytime technology displaces a job previously held by human hands, people get nervous. It's happened in other industries like law and accounting, so why not software development?
Higher-level abstractions have been a hallmark of software development since the earliest mainframes were being programmed. Software engineers are hired to build tools that automate repetitive tasks, so why wouldn't we apply those same skills to our jobs? We do, and that's why we've invented so many DSLs (Domain Specific Languages) over the years.
Kesler points out that "there have been huge applications built using no-code—the first Adalo no-code app was recently acquired—but 'no-code' isn't 'anti-code.' This is going to allow software engineers to work on the fun stuff and get out of the weeds more often."
Piekarczyk agrees. "You will always need software engineers," he told me, "but they'll move to work on the really complicated stuff."
While no-code and low-code solutions might mean software developers aren't building as many simple CRUD applications, there will always be a need for people who understand the lower-level workings of a system to solve unique and challenging problems.
Anyone who's built a web app in Bubble or a mobile app in Draftbit will tell you that none of these tools can do everything that custom code can do. Piekarczyk admits that his platform currently doesn't support push notifications and authentication, but they're working on them.
For many startups who have had success using no-code tools, handling growth becomes a problem. "Scalability is always a concern," says Kesler, "but for a lot of founders, that's not their top concern. Just being able to get a product out and determine its viability is huge." This is especially true if you're using a no-code database like Airtable that enforces a 5-requests-per-second limit.
Because the no-code ecosystem is fragmented and relatively new, building apps this way can feel disjointed and hacked together. I've found that you sometimes have to settle for an imperfect user experience if the no-code tools you're using don't offer a particular feature. Kesler admits, "You're confined to what each tool allows you to do, so you may need software developers to fit the pieces together."
Despite these limitations, it's impressive how far no-code platforms have come in the past few years. The powers unlocked by these tools have allowed new businesses to take off and existing firms to optimize more of their processes with fewer engineers.
"Software developers tend to be software addicts who think their job is to write code. But it's not. Their job is to solve problems." - Jeff Atwood, Stack Overflow
If the projections are right and no-code apps become more common in the future, what can software engineers and team leaders do to prepare?
First, we have to continue learning. That means learning the low- and no-code platforms that are out there so we can be more productive and continue to add business value. Software engineers are hired to solve problems—writing code is not enough. Just as very few developers write machine code today, we might be entering a future where only the most specialized developers write HTML from scratch.
Second, make sure no-code solutions can't easily supplant the products you're building. If you realize that you're hand-coding simple components from scratch that could be bought or imported as a library, make sure you have a good reason for it.
Finally, focus your time on the highest leverage tasks and use no-code solutions where you can. Businesses that are the first to adopt no-code tools to create products faster will have the most time to extract value from them before these tools become commonplace.
Product teams that thrive in the age of no-code tools will embrace them when they make sense and build custom tools when they don't. They'll have the ability to move faster with leaner teams and produce more value for the rest of us. As a software engineer, I welcome the no-code future.
Karl Hughes is a software engineer, startup CTO, and writer. He's the founder of Draft.dev.