My yard is dying, so I made an app for that

My yard is dying, so I made an app for that

When I returned to my computer five minutes after giving Gemini a lengthy prompt, I had two things: a functional app in a preview window, and a message about a bug.

“~ Channel is unrecoverably broken and will be disposed!” Sounded bad! But right below it was a button to fix the bug. Pretty weird that I just instructed a computer to build a whole app for me with a single prompt, but it needed me to click a button to fix a bug. I did anyway, and in 233 seconds Gemini reported back that it had succeeded, using words like “blockages” and “race conditions.” I didn’t understand a bit of it. It was thrilling.

This was my second or third attempt at vibe-coding an app, depending on if you count one that I never took out of the preview stage. The project that never fully launched was a web app with one job: to check if a local high-end grocery chain is running its annual Peach-o-Rama event. So far, no peaches. However you count it, the project at hand is more ambitious: an app that will help me master my unruly yard.

All the best yard projects start with a natural language prompt in a chatbot.

All the best yard projects start with a natural language prompt in a chatbot.

When my husband and I moved into our house eight years ago, we didn’t give a lot of thought to yard work. Sure, you mow the lawn and stuff, but don’t the shrubs and trees pretty much take care of themselves? We ignored the yard until the weeds moved in. The flower beds bordering the house and the boundaries of the yard quickly filled with weeds of biblical proportions. Clearly there was more to this whole “yard” business than we anticipated.

We won a couple of battles with the weeds but eventually lost the war and called in a landscaper. His one-time visit let us leave the yard mostly on autopilot for a few years. It worked, but then the weeds started creeping back and the shrubs were showing signs of distress. When the weather started turning spring-ish this year, I resolved to figure out what was going on with our yard.

I had a rough idea where to start, but I wanted some help along the way and a method of organizing the chores that needed to be done. Why not make an app for that?

I tried to be as descriptive as possible with my prompt, which was basically a list of demands: Help me manage a long list of yard care chores; Make recommendations; Take weather into consideration; Use image recognition to help diagnose problems with plants. I entered it all into Google’s AI Studio with the goal of creating an Android app that I could load on my phone and bring outside. You know, where the plants live. I figured it would take an hour or so and I could spend the rest of the day documenting the state of my yard and doing whatever the app told me to do.

My calculus was a little off. Sure, I had a working app in a preview window within a few minutes. It was logically organized, with sections to manage different plant zones and an AI “plant doctor” where I could upload images from my phone. But it had a major color scheme problem.

Why, Gemini?

Why, Gemini?

For some reason, Gemini had decided on dark mode for my app, with dark purple and brick red accent colors. The text was illegible, but also, it was hideous. I suggested a white background with light green, pink, and blue colors, and reminded it to care about human readability. It returned with something more pleasing, and an enthusiastic greeting at the top of the app homescreen: “Welcome Back, Gardeneer!” Honestly, I like the adventurous edge of “gardeneer,” so I kept that bit.

I kept the basic structure that Gemini had come up with, too. I did have a few tweaks, like integrating live weather data rather than some weird climate presets that the AI had come up with. Apparently Gemini figured I could just pick the right “profile” to match the day’s weather conditions and it would adjust its watering recommendations accordingly. It seemed like an odd choice when live weather info is easy enough to call in via API, and it wasn’t the last time I’d have to remind Gemini of the difference between the physical world and a theoretical one. Otherwise, I beamed it up to my phone and started using it as quick as I could, too excited about shipping my first app to be bothered with iteration.

Except there were some critical things I’d missed when I’d glanced over the app on my laptop screen. I couldn’t edit chores once they’d been created, or schedule them for particular days. I could create profiles for individual plants and group them by zone, but couldn’t tie them to particular tasks or… do much of anything with them, really. There were separate tabs for one-off and recurring tasks, but every chore I added to the app seemed to disregard this sorting and landed on the recurring tab.

The color scheme isn’t perfect but it’s definitely better.

This plant doctor feature turned out to be the most useful thing in my app.

This turned into a lot of tedious back-and-forth. I requested an update, waited for Gemini to implement it, deleted the old version of the app on my phone, and replaced it with the new one. I’d notice something else not working, like a date picker that doesn’t actually let you pick a date, and then have to go back to the chatbot. Rather than just an unruly yard, I now had an unruly app to tend, too. There’s a lesson somewhere in there, I’m sure.

On the other hand, the AI plant doctor was very effective right out of the box. It’s essentially just a “Hey Gemini, figure out what’s wrong with this plant” button, and I uploaded a picture of an ailing rhododendron. After a minute or so it spit out a detailed report card on the plant’s health (critically bad!), likely factors contributing to the problem, and some action items I could add to my planner with a tap. That was exactly the kind of yard help I needed.

Our landscaper’s set-it-and-forget-it fix had been to cover the flower beds with landscape fabric and river rock. This would take care of the weed problem for a long time, he claimed, and the existing plants would be fine. Plus, he offered a discount if we paid in cash. Done and done.

Now, years later, something was clearly off. The leaves on a bush near our front door turned yellow and flies were constantly buzzing around it. The rose bushes grew gangly and blooms were sparse.

At least it thinks my cherry tree is doing okay.

One weird trick to fix your yard: don’t cover it in rocks.

Gemini was quick to blame the landscaper-recommended fabric and rocks. It was suffocating the root system, it said, which was also drying out as the landscape fabric had likely become clogged with dirt over the years. On top of that, the sun-baked rocks were essentially cooking the roots from above on hot days. No wonder our yard looked like shit; it was actually a wonder that any of it was still alive at all.

At that point, it was too late in the day to begin Operation: Rhododendron Rescue. After all the back-and-forth making my app, I’d managed to squander a full afternoon of nice weather typing prompts into a chat window. Every time I hit enter and sent Gemini on a fresh coding mission, I’m sure I was chewing through the equivalent of a microwave dinner’s worth of electricity at a data center outside of Spokane or wherever. The irony wasn’t lost on me.

Even though my app still wasn’t perfect, I put aside my feature requests the next day and decided to just act on Dr. Gemini’s urgent recommendations for the rhododendron. I spent a sweaty afternoon with a podcast in my ears, raking back the river rock and cutting back the landscape fabric, as well as pruning some of the twiggier bits of the shrub. After that, I turned my attention to another one of the rock beds, this one covered in weeds that had started growing on top of the fabric. Hot tip: Don’t put a bunch of landscape fabric in your yard.

Here’s the secret of yard work that I didn’t know eight years ago: It’s extremely satisfying

It was exhausting work in the full sun, and once I got closer to the thorny Himalayan blackberry vines invading the yard, the expletives started flying. But here’s the secret of yard work that I didn’t know eight years ago: It’s extremely satisfying. That feeling when you get your tool under a big weed and pull the whole thing up, roots and all? Or when you get your shovel under the blackberry bush and rip it out of the ground, sending it back to hell? There’s nothing like it. Weeding sucks, but it’s also addictive. Once I get going I always have an easy time convincing myself to just stay out for another 20 minutes when I should really pack it up.

I did eventually call it a day, opened my app, and crossed off a couple of the yard chores I’d finished. Having spent several hours literally in the weeds of my yard, I had a new list of feature requests in my head. I wanted ongoing help from Gemini as I worked on reviving my plants, not just a one-time diagnosis. And as much as the idea of organizing my yard by zones appeals to my Type A nature, I’m not sure it does anything useful for me. I’m taking care of a small urban-suburban backyard, not, like, Central Park. Could this app have just been a Gemini chat and a list of to-dos in Google Keep? Probably.

I don’t think my “Gardeneering” app is ever going to make it to the Play Store, but making it has been pretty instructive. It’s hard to communicate how wild it is watching a computer turn your text prompt into a functional piece of software — kind of a “telling someone about your dream” situation. But you do need to go in with a crystal clear vision for the problem you want your app to solve. I could have saved myself a lot of back-and-forth if I’d done a little more work up front to focus on my needs before I started firing off prompts.

My adventure in vibe-coding has also illustrated something that I knew logically, but didn’t fully grasp: AI has no idea what the real world is. It didn’t hesitate to put black text on a dark purple background, because legibility isn’t a concern for a computer. It tried to interest me in generalized rather than real-time weather information, because what even is real-time weather to a computer? Even when I was working on my “Is It Peach-o-Rama Yet?” app, Gemini tried to pass off a version that would pretend to check the grocery store’s website and social channels, but would really just cross-reference the day’s date with the fact that Peach-o-Rama usually starts in mid-July. I had to insist that it mattered, actually, whether Peach-o-Rama was really happening.

I haven’t given up on the yard app just yet, but the right version is probably much simpler than the one I started with. And as for the advice I got from Gemini, it’s looking like the AI was spot-on. It’s only been a few days since I pulled the rocks and fabric back from the rhododendron, but I can already see some new leaves coming in on one of the branches. Maybe there’s some life left in my yard after all.

Follow topics and authors from this story to see more like this in your personalized homepage feed and to receive email updates.

Sponsored
Sponsored
Upgrade to Pro
Choose the Plan That's Right for You
Sponsored
Sponsored
Ads
Read More
Download the Telestraw App!
Download on the App Store Get it on Google Play
×