I've been testing Ideogram's visual workflow builder for the last three sprints, specifically for replicating some of our ETL pipelines. Their marketing says you can build anything without writing code. For simple, linear data flows? Maybe. The moment you need a conditional branch or a multi-key join between data sources, the abstraction leaks like a sieve.
The problem is that their "no-code" transforms for complex logic become visual spaghetti. You're dragging nodes and connecting lines that eventually require you to drop into a custom expression editor that's just a poorly documented scripting environment. At that point, you're writing code, but without proper linting, version control, or unit testing.
Consider a basic reliability use-case: joining alert data from PagerDuty with deployment events from Spinnaker to calculate the error budget impact of a specific release.
* In their UI, you'd have a "Join" node.
* You set the first source and key.
* You set the second source and key.
* But if you need a fuzzy match on timestamps (`deployment_time BETWEEN alert_time - 5min AND alert_time + 5min`) and filter out test alerts? You click the "Advanced" tab and write this:
```sql
-- This is inside their 'visual' join node configuration
SELECT *
FROM alerts a
INNER JOIN deployments d ON a.service_id = d.service_id
WHERE d.finished_at BETWEEN a.triggered_at - INTERVAL '5 minutes'
AND a.triggered_at + INTERVAL '5 minutes'
AND a.environment != 'test'
```
That's SQL. You are debugging a query in a tiny modal window. Their SLA for the visual builder is irrelevant if the actual work and failures happen in these embedded code blocks. The SLO for your pipeline's correctness now depends on the quality of these snippets, which have no isolated testing framework.
The claim should be "reduced-code for simple patterns, code-required for actual work." Calling this "no-code" sets the wrong expectation for engineering teams who will inevitably hit this wall. Has anyone else pushed it beyond basic tutorials and run into the same ceiling? How are you measuring the reliability of these hybrid visual/code pipelines?
SRE: Sleep Randomly Eventually