Building for the Real World
When I started designing my aeroponic farming towers—what eventually became SkyGrow—I wasn’t working in a lab. I was working in my backyard. That distinction has shaped everything I’ve done since.
The backyard is full of surprises. The pump clogs. The sun doesn’t shine as long as you need. A curious raccoon might decide to “test” your setup in the middle of the night. Real life is messy, unpredictable, and rarely matches the clean conditions we plan for on paper.
That’s why I design for resilience. Not perfection. Not elegance. Resilience.
What Does “Resilient Design” Mean?
To me, designing for resilience means creating tools that keep working even when things go wrong. It means asking: What if the power cuts out? What if the person using this has no technical background? What if it gets knocked over, flooded, frozen, or forgotten for a day or two?
I don’t build for engineers. I build for teachers juggling a dozen responsibilities. For parents trying to get their kids excited about greens. For restaurant owners who don’t have time to troubleshoot Wi-Fi. For someone on a tight budget who can’t afford to replace custom parts.
Resilient design means these people can still grow food. Not just when everything goes right—but when life gets in the way.
Simple = Strong
One of the biggest lessons I’ve learned over the years is that simple doesn’t mean weak. In fact, simplicity is often the strongest design choice you can make.
A lot of people assume that more features equal better performance. But more features mean more things that can break. More complexity means more confusion when something stops working.
I don’t want people to need a tech support hotline to grow basil. I want them to feel confident, in control, and capable. That means making systems with fewer moving parts, fewer dependencies, and clearer instructions. If something breaks, you should be able to fix it with a screwdriver and a zip tie—not an app update or a replacement shipped from overseas.
Failure Is a Design Tool
Early on, I made a lot of mistakes. Timers failed. Water lines got clogged. The pH spiked overnight and wiped out a whole batch of greens. At the time, it was frustrating. Now, I see those failures as some of my best teachers.
Each time something broke, I asked: How could this have been prevented? Not how do I make it perfect?—but how do I make it more forgiving?
I started using backup overflow channels in case the misting failed. I simplified the electrical setup so it was easier to troubleshoot. I made the entire frame modular so parts could be swapped out without rebuilding the whole system.
These decisions weren’t glamorous. But they made the system more resilient—and that made it more useful to more people.
Designing for People, Not Prototypes
It’s easy to fall in love with a clean prototype. You know the one: polished edges, seamless integration, probably featured in some design blog. But in the real world, that kind of design often doesn’t last.
In my workshops, I meet people who use their towers in ways I never anticipated. One person set theirs up in a church basement. Another bolted it to a fence because they didn’t have floor space. A group of middle schoolers figured out how to run two towers off a single pump.
None of those use cases showed up in my design sketches. But they all worked—because the system was flexible enough to bend without breaking. That’s what matters most.
I don’t want users to feel like they have to adjust their lives to fit the tool. I want the tool to adjust to fit their lives.
Why Ideal Conditions Are a Trap
Designing for ideal conditions is tempting. You assume a steady power source, a temperate climate, attentive users, and perfectly timed nutrient mixes. That’s fine in theory—but that’s not how most people live.
People go on vacation. Kids bump things. Pipes freeze. Pumps short out.
If your system only works under perfect conditions, it’s not a sustainable system. It’s a performance piece.
I’d rather build something that’s a little rough around the edges but still works when the unexpected happens. Because it will.
Feedback Is the Blueprint
I don’t design in isolation. Every iteration of SkyGrow has come from feedback—sometimes direct, sometimes subtle. A student telling me the instructions were hard to follow. A teacher showing me a more efficient way to stack trays. A veteran pointing out that the valve handle was tough to grip with arthritis.
These insights are gold. They don’t just improve the design—they remind me why I’m designing in the first place.
Designing for resilience means listening. It means staying humble. It means recognizing that the people who use your tools often know more about what they need than you do.
The Big Picture
Resilience isn’t just a design goal—it’s a mindset. In a world where systems are increasingly fragile and complicated, we need more tools that are durable, repairable, and adaptable. We need fewer black boxes and more open blueprints.
I believe growing your own food should feel like something you can do, not something you might mess up. That belief guides every design decision I make.
Whether it’s a tower in a school garden or a single unit on someone’s balcony, I want people to feel confident using what they build—and proud of what they grow.
Because the future isn’t built in perfect conditions. It’s built in backyards, kitchens, and classrooms. And if we build it right, it’ll keep growing—even when the unexpected happens.