Why CI Sucks (And Ours Doesn’t)
We all know it — Continuous Integration systems have been horrible since… FOREVER.
I’ve been a software engineer for a few decades, and I’ve professionally used GoCD, Bamboo, CircleCI, Travis CI, Jenkins, GitLab, and lately GitHub Actions .
And no matter which I picked, they all drove me crazy.
My problem with these systems is that they always meet the following criteria:
- Horrible setup
- SLOOWWWWWW
- Quick feedback? Bitch please.
I truly don’t understand why we keep accepting this. Let’s dig a bit deeper.
Horrible Setup
I don’t know who in history thought this was a good idea, but why — oh why — is YAML the standard for setting up CI?
Let’s first acknowledge that every CI pipeline configuration is different. So for each new system, you get to implement yet another YAML configuration. It’s not hard, just annoying. Migrating from one CI to another becomes a tedious job.
And even once you’ve got the syntax down, the real pain starts:
You make a change.
You git commit
, git push
, and then…
You wait. And hope it works. On fail, repeat the cycle
Thankfully all pipelines are horribly:
SLOW
Let’s say you finally managed to set up your pipeline after fighting through YAML, secret configs, and duct tape. Now every time you push code, you wait… and wait… and wait.
I personally believe the whole idea of Continuous Integration is that you integrate continuously.
To me that means: integrate right now, not “after this 10-minute+ pipeline.”
No. Integrate. NOW.
Why is it normal to wait 10 minutes or more for a pipeline to finish? Who made that decision?
Sure, you could optimize the build, the runners, the cache… whatever.
But will you really get it below 5 minutes?
I doubt it.
But hey — 5 minutes is fast, right?
Quick Feedback?
Honestly, I stopped looking at pipeline results completely. I just don’t care anymore.
When I work, I work. I don’t check email, I don’t check my phone, I don’t glance at a dashboard with red and green builds. I don’t keep an extra screen open for build statuses. And I know I’m not the only one.
How often does a pipelines stay broken? How often do people commit to a broken pipeline? A lot.
Why? Because it doesn’t integrate with my workflow.
I don’t want to change how I work just to accommodate some pipeline system.
Isn’t the whole point of CI that it should integrate with me or my team?
Whatever system you use, it doesn’t.
Here at Zippy, we didn’t just complain — we fixed it.
- ✅ No YAML — Just a simple bash script. No configuration hell.
-
🚀 Instant feedback — Feedback in the terminal after
git push
… aaaahh love it. - 🔄 Real workflow integration — Runs where you are, when you push. No tab-switching. No guessing.
Push code, get results — instantly. That’s it.
We built the CI we always wanted — because we are tired of the rest.