I am forcing myself to use Claude to learn vibe coding strengths and limitations. I vibe-cides a moderate complexity app today.
This app does the following. You have a video where most interesting stuff happens in the middle. At the periphery, you don’t have much movement. This app automatically trims these dead or non-interesting zones from the video. For example, if you have a large recording of a arena with no activity in most of the area then you can use this utility to reduce the frame size and store the most interesting bits.
I picked Rust to vibe code https://github.com/dilawar/trim-dead-area for Windows, macos, and Linux. I tested on Linux only. Here is demo video (also available on youtube).
Why Rust? Because real man vibe-code Rust. It also has a very good type system that helps AI. I am sure vibe coded Rust app would be much better than vibe coded Python or C++ app.
It took me almost 10 to 12 hours to complete this version I am blogging about. I didn’t tweak any code by hand even when I knew that Claude is writing very verbose code.
At the start, It was amazing to write a few sentences and have a working GUI in 5 minutes. Perhaps you can do the same with a tool like cookiecutter but who has time to explore that when you got Claude.
I know the Rust ecosystem very well so I asked it to use certain crates like tracing, anyhow, clap, imgui, and ffmpeg-next.
Then I described pure business logic. I did not write any algorithmic or DSA details. It did pretty well. Whatever it gave me ran ok. I had a demo-able version in an hour.
Today, I spent 8 hours tweaking the app. It became progressively harder to steer Claude. Most of the time, it did something similar to what I wanted but not exactly. I spent an hour replacing the spinner with a progress bar to my taste! But it keeps bringing the spinner back occasionally.
I also learnt internals of ffmpeg while prompting. I asked Claude to give me a tutorial if it used a new ffmpeg API or some new algorithm.
Then I added more features to GUI, added a cli as well, and asked for some refactor. The code it wrote is at least 3x to 5x of what that I’d have written for same features. My UI would have sucked lemon though.
Overall mixed feelings. I manage to finish it well because I’ve experience with algorithms, rust ecosystem, and GUI development. It would have taken me a couple of days of intense work. But I’d have enjoyed those intense session more than these vibe coded session. On the flip side, I’d have not spent that time on this app.
I am still not sure how well Claude would have done in my hands without much experience e.g. when I was fresh out of college. But I am almost sure that I would definitely be a much worse programmer if I had used these tools every day like this.
Pingback: Weekly Notes 2026/14 | Dilawar's Blog