The Expert Guide to Comparing No-Code Tools

A framework for picking no-code tools based on three things: pre-built components (Legos), logical completeness for loops and conditionals, and escape hatches for custom code. Zapier excels at Legos, Xano at logic, FastGen at custom code. Mix tools to play to each one's strength.
Chapters
There are 3 keys to the effectiveness of a low-code, no-code tool. I often get asked how to think about these, uh, low-code platforms and how one might be able to compare them. They all got sort of very interesting products and what have you and interesting features. And, uh, how should we think about, uh, comparing one versus another? And there are really these 3 axes that I focus on. That I find to be most helpful when I'm comparing. The first of these three is what I call the availability of Legos. And that's really just a metaphor for these pre-built components that are very fast to use, that allow us to accomplish a lot of table stakes stuff very quickly. And when I think about like who's really good in that field, I think of Zapier, who has, you know, thousands of these Legos for talking to all sorts of different systems. And as long as you're working within the confines, right, of what they've actually built into the Lego, that is, you can get a lot done. And the— and that's really going to be where they shine is in the ability to assemble a whole bunch of those Legos. The second is going to be logical completeness. Now, logical completeness really means the ability to loop, to iterate over arrays, to be able to have branching, to be able to control the flow of how a system is going to operate. This is really important for backend systems, both API-based backends as well as workflow-based backends. Uh, but you're going to find it becomes a pretty big deal on the frontend too, because it's going to be about how you manage data that's both coming in for display and going out as a result of interactivity. And the ability to manage that flow is something that not all tools do equally well. And so I look for how do they manage arrays? I look for how do they manage iteration? I look for how do they manage the idea of looping and the 3 major kinds of looping, like a while loop, a for loop, a foreach loop, and also how they handle conditionals. Because there are a finite number of tools that allow you to create something that can be nearly Turing complete as a machine and be able to do some really, really, really cool stuff. And when those tools are available, you're able to just do a whole lot more. The third of these is going to be the escape hatch. And the main escape hatch I look for is the code escape hatch and like the presence of some sort of code step or what have you. That means you don't have to use the stuff that the designers and UX engineers or whatever this tool is have already thought of, but you're able to go someplace they've never been before. There are tools that allow you to do this at a very primitive level, right? By having, you know, the ability to make a bare bones, uh, like HTTP request. Out to a third-party service. There are those that have another level up, and you're able to have, you know, be able to create a bit of custom code that, you know, could be JavaScript, Python, what have you. There's another level above that where you're able to bring in custom SDKs that the original creators of the tool never thought of, and then you're able to bring those to the party. All of that allows you to get at a lot of power that the, that the creators of the system hadn't ever thought of before. But that allows you to make sure you're filling in these cracks and crevices and make better use of the weird and wonderful other APIs, tools, what have you, that are going to matter most for your business. And that probably are not the kinds of things that scale as much, right? It's going to be things that are very much more, uh, which means it's going to be much more where your business adds more value. It's going to be what's more special, um, about your particular tool or domain. When you put the three of these things together, you have a structure for being able to compare different tools. And you can look at, um, you know, a few different tools and say, how do they work? Uh, how would I stack up on that thing? Like take Zapier. Zapier is super excellent, um, at having lots and lots and lots of Legos. It's definitely the world-class example of this. Those Legos will allow people to have that 5-minute zero-to-hero experience of being able to come in and, uh, uh, you know, make automations that will work well for them in a lot of relatively simple cases. Then there's a second step, right, which is the, you know, logical completeness part. And this is where like Zapier might do a little bit less well because while a lot of the tools are available, looping is not something that Zapier really wants to do. And that sort of takes a lot of the potential pieces of a dynamic, of a directed acyclic graph off the table. And when you try to get it to do it, it sort of is a little bit harder to work with, right? So it doesn't want to do that. Go in that particular direction. So it's going to work a lot better if you're just doing a more linear, simpler flow. And then the escape hatch is available. There are code steps for both JavaScript and for Python. What there is not is bringing in external SDKs, and that means the power of those steps is a bit more limited. So you wind up with having to create things more from first principles, as opposed to be able to make use of the tooling that came from these various third-party vendors. That would otherwise allow you to move a lot faster. Let's contrast this with something like Xano. Xano is terrible at Legos. Doesn't have much. Almost everything is being done really at the primitive level. They have a few things in the marketplace, but most of it is stuff you gotta roll yourself. The second part would be the logical completeness, and this is where Xano totally excels, right? They have excellent flows, controls. They think in terms of, explicitly in terms of while and for and foreach. And this is why Xano makes for an excellent router of other services. And that's what a lot of people who really use NOL will use it for. And then the third step, which is the escape hatch, is something they really don't have very much of right now. They have a so-called lambda that allows you to do a bit of code., that comes with a few prebuilt modules, but you don't really have the escape hatch really. If you're going to be doing escape hatch and lots of people do this with Xano, they will go to a third-party system, uh, like a third-party, you know, Lambda or something, or use Pipe Dream or FastGen or some other business like that to be running those code packages. You sort of compose those in. And that just tells you like where these systems are really good, right? Like, so, so Zapier is really good when the Legos can solve your jobs, solve your problems for you. Xano is really good when the pre-built Legos somewhere else might not exist. And it's about, you know, the routing and the more complex decision-making. And that's going to be where, where, where it really shines. And then you might take a system like— well, I brought FastGen a minute ago, which is a really interesting system that has, you know, again, not much in the way of Legos, has okay flow control. It's something that's still evolving over there. In fact, they just came out with a new release, so it may be even better than it has been. But where they really shine is the escape hatch, because you have the ability to create additional code blocks. In fact, they even have support for, you know, being able to generate more of that code with AI, even outside of like ChatGPT or what have you. And you can load in external packages from like npm and PyPI. What's cool about that is it means that they are heavily weighted towards doing things that nobody's ever thought of before. Right. And things that are done inside their structures are more limited, but things that they do outside of what they've considered before is where they can really excel and become a lot more weird and wonderful. So, uh, each of these has different advantages. Each of these you would use in different circumstances. But I think by looking at through these lenses of availability and quantity and quality of Legos, uh, that issue of no-code completeness and that escape hatch. There is a lot of insight to be had to be making better decisions about the products that we want to be interacting with, you know, given the job at hand. So when the Legos can do the job, we go one way. When we need really a lot more logic decision-making, we go another way. When we need to make better use of SDKs, we might go another way. And I gotta tell you, a lot of the systems I build are using all three. I have a single subsystem that will involve You know, something that involves code, in fact, is using FastGen, something that is being orchestrated centrally through Xano as logic, something that is going out to Legos, been done through workflows in Zapier. And taking advantage of each tool where they do their best is where we get to apply what I call the shopper's mindset to make best use of these tools and to really make a difference. So. When you're considering what kind of tool you want to be bringing to bear, first consider multiples, and second, think about those 3 keys. I think you're going to find it clarifying to make better decisions so we can all build more extraordinary products together.










