Show HN: Flowcode – Turing-complete visual programming platform
58 comments
·April 29, 2025collingreen
I love your premise here. I think visual programming has such untapped potential even though it has been tried and tried and tried so I hope you crack the code a bit (lol).
I think you're exactly right on the idea of "I just diagrammed all the control flow why can't I just push run". It's kind of crazy to introduce a point of failure (and a menial translation step) by writing code to match the diagram.
Another huge benefit that I learned when reading about drakon (obvious in retrospect) is that good visual programming makes the software development process more accessible to other smart people involved instead of locking it away behind computer jargon and tools (the drakon example was rocket scientists able to now work on, review, and validate the logic and control flow instead of having to just hope it ended up right).
I hate that I'm saying this but this would actually make me feel a lot better about the vibe coding going on right now. If the control flow was right, hand crafted, and easy to review I'd feel a lot better about throwing the implementation details of many individual nodes over the wall to the ai without worrying about the house falling down.
gabigrin
Author here. Thanks!
Lowering the barrier of collaboration is indeed a major goal for us. In the DRAKON analogy, Flowcode might help technical product managers collaborate with developers on LLM-heavy logic.
Re: vibe-coding - that matches our vision 100%. Let AI build the nodes while a human (even if heavily AI-assisted) oversees
Towaway69
Great stuff, wish you every success with Flowcode.
It reminds me of Node-RED which seems very similar but is aimed at IIoT applications.
I’m working on a version that is based on Erlang and not NodeJS which isn’t a true concurrent language.
For me, flow based programming makes the most sense with languages which are truly concurrent and message passing is baked in, ie Erlang.
One thing I’ve come to realise is that visual programming is a hard sell, hence my effort to create a visual environment for Erlang - to introduce visual programming to a different set of developers.
WillAdams
I tried creating a workflow:
>Given a folder of scanned files, create a .bat file with move commands which renames each file using the information from the scan of the form and superimposed check using the naming convention: $<amount of check>_<date of check in YYYY-MM-DD format>_<Invoice ID>_<PWS ID>_<name of company from population line>.pdf
https://app.getflowcode.io/api/run/7344545b-116c-44f1-83e0-2...
and when I run it, I get:
>{"message":"No matching HTTP trigger found"}
but I was expecting to be prompted for a folder.
worldsayshi
I feel like visual programming opens up for paradigms that would otherwise be hard grasp. And it opens up for many alternative ways to interact with "source code" - which feels under explored.
hermitcrab
History shows that visual programming can work very well in particular domains (data wrangling, signal processing, 3d image rendering etc) but has never really been successful for general purpose programming.
A lot of the issues related to visual vs text based programming have been debated here many times. As someone with a foot in both camps, I tried to summarise the various arguments here:
https://successfulsoftware.net/2024/01/16/visual-vs-text-bas...
mdaniel
What is the error handling story? I'm shocked that Control Flow doesn't contain Try-Except
Anyway, I ask because Write File returns nothing <https://docs.getflowcode.io/docs/reference/file-system/write...> but there's also no discussion on that page of what happens when one cannot Write File (and the ways that can fall over are almost unlimited)
Also, please fix the inputs bullet list, that's a pretty glaring "no one reads these docs" bug. While you're there, never, ever, ever, ever, ever just have the documentation for anything be a repetition of the input variable's name. I can read, what I can't do is know what the domain of possible encodings are available (base64? base85? uuencoding? gzip+base64 <https://docs.cloud-init.io/en/24.3/reference/modules.html#wr...>?)
mattfrommars
We use an internal 'no code' tool to do complicated data transformation logic. Our flow has become so large and convoluted, it is extremely difficult to put feature and debugging is absolute nightmare.
You have no idea how many times we had wished all this data transformation was in vanilla Java/Python. Our life would have been so much easier. But at this time, it is too large to ignore.
danfunk
Visual workflow tools, particularly those that are able to support a human-in-the-loop, MUST exist for the world to adapt and effectively use LLMs.
Literate Programming - coined by Donald Knuth and at the heart of Jupyter Notebooks - is powerful means of making software development a tool in the pockets a lot of people. I agree that just pressing "run" is critical to making a tool like this accessible.
I'm one of the core contributors to SpiffWorkflow. We are also visual programming platform and echo your belief of the power of combining visuals with programming. I shared this article here a few months ago that delves into our methodology. - https://medium.com/@danfunk/5-ways-bpmn-python-will-simplify...
conartist6 mentioned elsewhere in the comments of a need for a common standard for editors - I think BPMN could be that standard, or new revolutions of it, such as POWL.
collingree mentioned "good visual programming makes the software development process more accessible to other smart people" -- I think this maybe the MOST important long term benefit of these tools. More people in organizations need to understand what the hell is going on - and stop shrugging their shoulders when it turns out all the business logic is buried in 100k lines of code. Important shit should be easy to find and change.
As many others have mentioned here, visual tools are not likely to see wide adoption by software engineers for all of their work. But as middle groud in which to plant business rules, so those rules can be cultivated - it could change the world and the way we collaborate on software efforts.
Would love to talk to you both sometime, share war stories, dreams, and go to market strategies.
remon
So far there are zero data points on the success side of the fence when it comes to visual programming. The exceedingly rare times I come across it professionally it's a toy project or something that's basically in the state of "We wish it was just code but we don't dare touch it".
hermitcrab
>So far there are zero data points on the success side of the fence when it comes to visual programming.
What about Alteryx, Blender, LabView, Unreal Blueprint and any number of other node based tools?
janderland
What about Blender nodes? I’ve seen some pretty cool and fairly complex generative modeling using nodes.
For a simple example, here is Conway’s Game of Life. I’ve seen much more complex things implemented as well.
wasabi991011
Node based programming is pretty common for visual effects, like shader graphs (Unity), animation (Houdini), colour grading (DaVinci), etc.
thenthenthen
Puredata, Max/MSP for realtime audio/visuals, Touchdesigner
redkoan
IMO, Complexity is still best tackled with text. Low-code for lunch, spaghetti for dinner.
ivanjermakov
Agree. My understanding of why such visual node programming model exists, is because it is easier to sell to non-technical CEO. What's funnier is that this tool targets back-and developers. I don't know any BE dev who would prefer this over plain text programming.
_pdp_
I just want to make an observation based from previous experiences.
These styles of programming environments are not new. We have seen many such tools in the past. I think they are useful (to an extent) when dealing with high-level compositions such as orchestrating a video pipeline, shaders, simple logic.
They start to fail very quick when you need to implement more advanced algorithms and processes that are not yet abstracted in reusable blocks. Needless to say, it is easier to write code at this point. Just less cognitive load and frankly the visual model does not help when you have a solid mental model - you can keep more information in your head in abstract forms than the eyes can scan and process.
I am lurking in the n8n community and I have noticed similar patterns. The more elaborate workflows are just not as robust as they could be if you write code - and they happen to be very difficult to maintain too and full of bugs.
Other than that... these types of framework have their place and as I said, overall I think they are useful as long as they are used in the right way.
applied_heat
It’s all about using the right tool for the job. In control systems I have seen nightmares of for loops and if then conditions replaced by a skilled practitioner to a beautiful block diagram that solved the problem and illustrated to the reader the form of the solution.
seanc
"The past is never dead. It's not even past" - William Faulkner
Visual code is all over the place if you look; Any time something advertises itself as "low code" or "no code" it's a drag-and-drop flow based UI like this one. Most (if not all) ETL systems work this way, and all kinds of low-code AI Agent frameworks are cropping up.
I do agree that there very high prices to be paid for this stuff, and worst of all most of those costs are hard to see, and only crop up late in the project, when, as you point out, the more complex algorithms and processes crop up.
https://en.wikipedia.org/wiki/Extract,_transform,_load https://nifi.apache.org/ https://hop.apache.org/
beders
Re: HTTP Flows.
As we know networks never fail, read timeouts aren't a thing and error handling is not necessary as networks never fail and read timeouts aren't a thing and error handling is not necessary as networks never fail and read timeouts aren't a thing...
mettamage
Yea! Just like how the electricity grid of an entire country is guaranteed to be operating every day. And if it wouldn't, then we'd be quick at finding out what the cause is.
sampton
I'm starting to see line-of-business folks start jumping into Python using LLM. It's going to be hard to compete with that with your custom flow diagrams.
abxyz
Looks very good, I believe this type of product is the future (instead of vibe-coding that produces heaps of junk new code). A few thoughts:
* Flowcode is a clever name but since you are positioning yourself as an alternative to code ("Code is messy and complex") the name is contradictory, just call it "Flow" (or "flows" or "Flower" something)
* You are replacing the legacy of code with something new, embrace new ideas that get out of the "one running process" paradigm, e.g: durable functions. There are a bunch of companies in the space (inngest, DBOS, trigger.dev) who are doing very interesting things, copy/steal/leverage all the great things they're doing -- your product's value is the visual programming
* Most developers today are already writing code so getting out of their code flow to do something visual might not fit well, whereas there are lots of non-developers who would love a product like this (see: the success of Make.com, Zapier etc.) because you're offering the AI integration for creating workflows which gives them confidence to go beyond what Make, Zapier etc. offer
If I were marketing this product, my pitch would be reframing programming as something anyone can do when it doesn't involve code, i.e:: your users can become a developer without writing code, AI-assisted visual programming builds production-ready systems without a single line of code. Code is archaic, (visual) programming is the future. Vibe coding is faster horses, AI-assisted visual programming is flying cars.
orlevco
Hey, author's co-founder here.
You're right that getting developers to switch to visual programming will be tough. But we believe that: 1. In the right use case (standalone API/workflow, multiple LLM calls, concurrency etc.) working visually is going to be 10x better than code 2. There's a growing segment of non-developer-but-technical people: Self-taught builders, Product Managers, IT/Automation specialists. We think these people are currently stuck with existing tools that are very limiting. And once they're able to deploy real products with visual programming it will be a gamechanger for them. 3. Collaboration - Even if developers prefer textual code when on their own, when they're working with non-developers (product teams, clients etc) there's a big benefit for being able to share and present how things work.
abxyz
> In the right use case (standalone API/workflow, multiple LLM calls, concurrency etc.) working visually is going to be 10x better than code
I completely agree but I think that's a very hard sell. People who write code are often years deep in their preferred workflows and asking them to reconsider how they build things is a very big ask.
> Even if developers prefer textual code when on their own, when they're working with non-developers (product teams, clients etc) there's a big benefit for being able to share and present how things work.
The problem here is that developers lead implementation. The ideal implementation for a stakeholder is rarely the implementation that is delivered, because developers are taking requirements and translating them into the things they want to build. That's why so many products end up bad: developers have too much power by virtue of code being seen as some sort of magic spell that only a true genius can master. Can you imagine a non-technical person successfully dictating that the solution must be built with visual programming?
Low code / no code is powerful because it turns the relationship between product owner and developer on its head, it puts the product owner back in the driving seat (instead of a passenger begging the developer to go in the desired direction and accepting they'll probably end up somewhere... nearby, hopefully). Hiring the wrong developer(s) can be very bad for a company because of how much a developers choice's influence the product and business.
The proliferation of low code / no code in business often comes from outside engineering, many developers, regrettably, love to write code. Often you'll find that non-technical departments of companies have secretly started using things like Make and Zapier and n8n without telling the engineering department because they feel like they finally have the opportunity to make technology work for them.
Developers that exist in service of product are already using platforms like Make and Zapier and n8n because they understand how much value there is in programming without writing code, but for them visual programming probably isn't that much of a differentiator because they already have a vision in their head of how programming works.
Anyway, your product is great, I am sure you'll succeed regardless of the approach you take :)
somethingsome
That reminds me of a very beautiful flow based language years ago, Luna-Lang[1] but it seems that the website died and it is no longer maintained.
binary132
Hey — not sure if you noticed, but that is just a fork. The main repo (they rebranded as Enso) is still under active development. That said, I’m not too excited about the direction they’ve gone with it over the past few years.
somethingsome
I went to the Enso website, but it looked like spam, so I left
Hey HN! I’m Gabriel, and I’m excited to share a project I’ve been working on for the last few years. Flowcode is a visual programming platform that tries to combine the best of both worlds (code and visual). Over the years I found myself repeatedly drawing architectures and logic. It was always my dream to just press “run” instead of having to write them in code afterwards. But none of the visual tools I found were flexible and transparent enough for building real products.
I think that visual programming fits perfectly with modern backend dev tasks that revolve around connecting different services with basic logic. Flowcode is meant to speed up and simplify those tasks, leaving more time to think about design and solve design problems. Visual programming also works really well for developing workflows involving LLM calls that are non-deterministic and require a lot of debugging and prompt tweaking.
There are many other visual/low code tools, but they all offer limited control and flexibility (no concurrency, loops, transparency) and most suffer from the same problems (vendor lock-in, hard to integrate with existing code etc.).
Flowcode is built on an open source visual programming language (Flyde https://github.com/flydelabs/flyde, which I launched last year here on HN - https://news.ycombinator.com/item?id=39628285). This means Flowcode has true concurrency, no vendor lock-in (you can export flows as .flyde files), is Turing-complete (loops, recursion, control flows, multiple IOs etc.), lets you fork any node, integrates with code via an SDK and more.
I’d love to hear your thoughts and feedback.