How will ChatGPT disrupt the low-code/no-code movement?
Fundamentally, being able to build robust apps (web, mobile, desktop, browser extensions, etc...) is a mechanism for creating an extraordinary amount of wealth. Combined with a successful marketing and/or sales strategy, a software startup can add tangible value for the world.
It's not a zero sum game; the more that people understand how to build and market software products, the more that everyone wins.
The promise of low-code/no-code is to save a significant amount of time and money when building apps. However, in the "real world" there are no lack of stories of people who tried to execute a MVP build on a no-code/low-code platform and ended up rebuilding it in a modern web development framework. This ended up costing them even more time/money than if they built it from scratch to start.
Of course, drilling into this a bit more, the key question is "why" did their no-code/low-code apps fail? In defense of a solution like Bubble, the argument is that it is simply a tool to develop apps that must be used the correct way. This, of course, begs the question: is it worth ramping up and becoming proficient in Bubble, or is it better to just learn a Web development framework and have more flexibility?
Perhaps the best solution is to have ChatGPT-assisted development. Students should still learn the basics of how software development works - and how their preferred framework is designed to be implemented - but they can now ask an AI to crank out the raw code for them, bit by bit.
For example, I've been building Rails apps since 2005. When I start building a new app, I usually go through a process of making sure I start with the most recent versions of Rails, Ruby, and various gems (open-source software packages) and spin up a new repository. I then start building out models, controllers, routes, and views to set up a scaffold of my application and get basic navigation in place. From here, each view gets more robust as route/controller logic gets filled in, views get more advanced CSS/JavaScript/WebSocket action in place, and models get more methods to make it easier to extract/present/store data.
These basic building blocks and flow structures can be taught in a weekend. What's more difficult, however, is teaching students the syntax of the underlying Ruby/HTML/Javascript/CSS code, the nuances of the tooling (i.e. their IDE, linting, Git, testing frameworks, etc..), and the DevOps (i.e. containers, staging, deploying into a production environment, getting all the DNS entries right, etc...).
While our AI assistants won't replace all of this overnight, I'd imagine developers will be able to ask an increasingly large number of building-block-type things for the AI to perform, and - to start - there will be a lot of copy/pasting into a code base.
In theory, at a unit level, this will create clean (linted) code with less bugs in it. We also may see an extraordinary velocity increase at the level of writing tests. Perhaps developers will actually start doing test-driven and/or behavior-driven development again!
So, perhaps the best way to proceed is to tinker with ChatGPT and/or other text-to-code AIs and see how far we can get here.
I saw a tweet recently that ChatGPT won't disrupt Google, but it *will* disrupt Stack Overflow. Instead of having to scour and discern how to write/fix a certain thing, we simply will ask our AI assistants how to fix the issue and we'll have our answer in no-time.
Certainly there will need to be custom AI bots for particular setups (e.g. one designed for helping people create Web apps with Ruby on Rails). Ironically, if we pull this off, we will simply have created a better low-code/no-code solution. :)