The term no-code has always kind of rubbed me the wrong way. Why would you define your product based on what it is not, instead of what it actually is?
Andreas Møller
August 22, 2024
I never liked it for toddle, because It completely misses the point. toddle is about making the best possible tool for building web applications, whether that involves code or not is an implementation detail.
What I have come to realize is that the problem is not with the term no-code itself, but just that toddle is not a no-code tool.
What is no-code?
I used to think that no-code just meant: “Programming without writing code”, but in actuality a more accurate definition would be: “Programming for people who can’t code”.
If you google “What is no-code?” you will see very similar definitions in the top results:
“The term no-code refers to an ecosystem of tools and methodologies that let people without technical skills or expertise build software without coding.” - nocode.tech
“No-code is a term used to describe a method of creating software, such as websites and apps, using visual drag-and-drop interfaces instead of code. In other words, no-code allows anyone, regardless of their technical ability, to build on the internet.” - makerpad
This distinction is actually quite significant.
No-code tools are designed for people who have little technical background, and often have no desire to become a full time developer. For this reason no–code tools focus on being easy to learn and will happily sacrifice flexibility and power if they can make the learning experience better for beginners.
Some of the most common criticisms of no-code is that you can’t build real SaaS apps, that no-code apps have terrible performance and that no-code can’t scale.
This perfectly matches what we can observe among no-code tools, and makes perfect sense, since flexibility, performance and scalability are simply not the primary focus for any of the no-code platforms
This post might begin to sound like a hatchet job against no-code platforms, but no-code platforms are not inherently bad. They are simply a set of tools with a very specific audience.
When you build a visual development platform you are forced to make tradeoffs all the time. A platform that lets complete beginners build a beautiful business app in a single day, can’t also be an effective tool for professional developers.
To build a great product you need to know who your customers are and give them your undivided attention.
What makes toddle different?
No-code tools’ primary focus is to abstract away from code to make programming easy to learn, toddle has different set of priorities. toddle is first and foremost a tool for professionals. People who spend most of their day building software. I.e software developers.
We want toddle to be as simple as possible, without compromising on flexibility, performance and scalability. Toddle’s goal is not to remove code or parts of it, it's to make the best tool for professionals who build software.
This does not mean that you have to be a professional developer to start learning toddle. In fact, we believe toddle is the best way to learn many of the fundamental concepts that powers the web and programming in general. It does mean that toddle has a slightly steeper learning curve than other platforms. Software development is a powerful skill and to do it well you should expect to invest some time.
To be clear about what kind of tool toddle is, we have decided to move away from the term no-code completely, in favor of visual development or visual programming.
If two do it, It’s a movement
The team behind FlutterFlow recently released a video about why they hate the term no-code. If you haven't seen it, you can watch it here:
The arguments they make in the video closely resembles many of our internal conversations, and I found myself nodding along as I was watching it.
A few quotes from the video especially stood out to me:
“Our goal is to help people build great products and we do that by providing an intuitive and efficient interface. Writing less code is a byproduct of the goal, not the goal itself.”
When I started working on toddle I wanted to build the kind of tool that I would want to use. It wasn’t about removing code. It wasn’t even about making programming more accessible to beginners. The fact that toddle is such a great way to learn web development is similarly a by-product of our real goal: to make the best tool for building high quality web apps.
Just like the team at FlutterFlow, we believe that visual programming is the next logical step in the long evolutionary history of programming.
Visual tools like toddle and FlutterFlow have the potential to change how most software is built in the future. No-code tools will not.