Iterate, Improve, Repeat: How Fly.io Taught Me the Power of Iteration

In this post, I’ll show you how Fly.io turned me into an iteration believer. From watching a feature grow like a digital plant to realizing that "Iterate, Improve, Repeat" is the developer’s secret sauce, I learned that nothing is perfect; and that’s perfectly fine.


Introduction: So There I Was...

As a small business, keeping cloud hosting costs down is like trying to find a decent pair of jeans that doesn't cost an arm and a leg. We didn't want to break the bank on big cloud providers like AWS or GCP, so I ventured into the world of Fly.io. As a developer, I was a bit skeptical, you know? Sure, Fly.io seemed promising, but how much better could it really be than the big guys? Spoiler alert: way better, my friends. Way better.🤯

This journey wasn't just about finding a budget-friendly solution; it turned into a crash course on the power of iteration in software development. And guess what? I learned this valuable lesson from a small cloud service that was constantly evolving right before my eyes. In this post, I'll spill the tea on how my experience with Fly.io showed me why iteration is king in software development; and how I'm now using this same approach to conquer my own projects.


The Billing Breakdown Saga: A Love Story of Features in Progress

It all began with a missing feature that felt like a dealbreaker (well, almost): the billing breakdown. As a penny-pinching developer, I craved for knowing exactly how much each resource was draining our bank account. But when I logged into Fly.io, the billing section was like... meh, a bit vague.

Then, out of the blue, a little banner popped up like a magic genie. It said something along the lines of, "Hey there! We're cookin' up a billing breakdown feature. Stay tuned!" Naturally, I did what any self-respecting developer would do: I became glued to the dashboard, checking it more times a day than I check my social media (and that's saying rarely). Hoping, praying, that the feature would magically appear.

After a while, the banner changed its tune. Instead of just teasing the feature, they released a bare-bones MVP that looked like it was built with duct tape and bubblegum. There was even another banner that said something like, "This ain't perfect, but we're working on it! (We call this a WIP, fancy developer term for 'work in progress')."

Honestly, it wasn't exactly winning any beauty contests. The data was still a bit confusing, and I couldn't quite decipher what was costing what. But here's the kicker: I wasn't bummed. I wasn't annoyed. I was actually kind of pumped!

The fact that they were upfront about it being a WIP and that they were open to hearing my thoughts made me feel like I was part of the crew. They weren't just throwing a feature out there and forgetting about it; they were building something with their users in mind. And that's when it hit me: iteration is the name of the game.


The Secret Sauce of Listening, Iterating, and Improving

Here's the golden nugget I unearthed: Fly.io wasn't just churning out features. They were actively listening to their users, constantly rolling out updates, and forever improving their product. Sure, the first version of the billing breakdown wasn't the best, but it wasn't about perfection; it was about the willingness to iterate.

Imagine being a customer and knowing the company you're trusting with your hard-earned cash is actively listening to your feedback and making changes based on your suggestions. It's a powerful feeling, my friends. You feel like you're not just a customer, but a partner in crime. You're part of the product's journey.

And that's the magic sauce. Fly.io didn't just build a feature and call it a day. They embraced iteration. They understood that the best products aren't built in one go; they're shaped and improved over time, with constant feedback and refinement.


The Moral of the Story: Code, Release, Iterate... Even for Mom and Dad

So, what's the big takeaway here? Here it is, loud and clear: Listen. Code. Release. Iterate.

It doesn't matter if you're building the next big SaaS product or just whipping up a website for your mom's scarf-knitting business (hey, no judgement here). The approach stays the same. You build something, you release it to the world, and then you iterate based on the feedback. The faster you get something out there, the faster you get valuable feedback. And the faster you can improve your creation.

In fact, I'm now applying this iteration philosophy to everything I build.

Until the next brain fart, stay safe, don’t chase, and bye for now.

The End

Iterate, Improve, Repeat: How Fly.io Taught Me the Power of Iteration