Post

I refuse to call it vibe coding, but I prompted my way to a command line tool, written in C, that converts millimeters to inches and vice versa. A few prompts later, I got something that works, and a man page with usage examples. 🤯 I usually can't find the time to create man pages or remember how.

The ability to generate code like this is impressive, but the ability to interact with the tool to explain things I don't understand is the game changing part to me. Even when using this tool, I'm still learning. I also noticed that I'm not reaching for my web browser to look things up.

A big part of my experience feels like it's based on my existing ability to write and debug code. I know what I'm looking at, and find myself studying the code for style, high level logic, and not fussing around with the syntax. While it works, I'm still finding the urge to make it look good too.

1 repost43 likes

imo it all depends on if you use AI as an oracle or a partner if you use AI as an oracle, it will indeed replace your expertise, in that you’ll have none left. OTOH as a partner it triggers growth

This part is what makes me miserable when using such tools to work on complex domains with problems that are too open. Even with all the good practices possible, sometimes it is excruciating to have to prompt the same thing 20 times to get a very bad result, with bad architecture and performance.

At this point I consider this a first draft and want to spend my time walking through the entire codebase, line by line, and make sure I understand everything, and fix things up to match my coding style and preferences. Question is, is this faster than just writing this whole thing myself?

I've done a few of these myself. It's definitely not faster than doing it yourself, but I think that's a good thing. Somehow, this method made me want to do better, earlier.

It might not be at first. But if you start creating instruction files (usually markdown) with your coding preferences/styles/etc. then the agent will follow that and it'll look good from the start (mostly).

It's almost like I'm writing the application twice. A good first draft, a detailed review, and lots of refactoring until it's just right. But isn't that how I've always done it? Is this a better workflow than the one I had before? Can this do things I can't? Those are the open questions for me.

The great thing is it's choose-your-own-adventure. If you want to mostly write code by hand, get occasional assists from Claude, and have it write the man page at the end you can do that. Or whatever! "This" can be whatever workflow you want.

Personally I am not convinced it is for most cases. The people I am encountering who lean the other direction also seem the most willing to look at the generated code as a detail bellow their level of abstraction.