I have been coding for more than 20 years now and nothing has changed my coding habit more than LLMs. I am a touch typer and use a blue mechnical keyboard since I love typing so much and have been used to writing a lot of code.
But ever since LLMs have released, I do find myself writing long prompts and then waiting for LLM to do the implementation. They are not perfect by any means and make a lot of mistakes, but I have found that verbose prompting does usually get the job done.
Now these sessions usually last a few hours due to how slow LLMs are and I usually work on larger pieces of work. I am used to working long hours and typing for a long time, but this is new. I find myself waiting for 70% of the time for an operation to happen.
I find myself watching tv shows or youtube videos or even doing some creative writing on the side while LLMs do their work.
So I was just wondering what other creative things the HN crowd has come up with to do while LLMs are doing the grunt work for you.
I noticed the same thing happening (waiting around while the agent worked) so I adapted my agent to handle multiple chats/worktrees at the same time. Now, when the agent is working on a new feature, I can start another instance working on a different section of code and/or review the finished code I had started in a different chat. If I'm working with one agent, I get visual pings when another agent finishes its task and I can quickly switch over to guide it. I can scale the number of running agents up or down based on my focus and energy levels at any given time. It works great (though I find I can only juggle 3 to 4 serious tasks at the same time). The only real issue is my token burn rate is now regularly much higher than in the past, but I'm getting a lot more work done so it's worth it!
I usually use tools that allow me to check the file changes once it's done with one "prompt" or one "change". This makes the waiting period be smaller, after which I check the changes and understand the code, fixing any obvious bugs I notice.
Sometimes while I wait I like reading the chain of thought, even though I mostly zone out, sometimes I notice stuff that the AI misunderstood and go back to redo or better explain my prompts if I think it's important enough.
When I get bored though, I usually just leave it to finish the entire task, and to stuff like cleaning my desk, room, fold clothes, or just write the plan for next task, project, day etc in my notebook.
I work on multiple projects. While waiting for one response, I write the prompt for the next project. It's not perfect. Context switching is costly. And sometimes I zone in and forget to pipeline the prompts and have to wait longer than ideal.
I would start writing the tests. I've never had an LLM write meaningful tests that pass.
as someone who misses the coding sessions and deep work, my workflow here is evolving. youtube and leisure stuff takes me too far out of work that i avoid it.
so far the best thing i’ve found is to have a side project or two that doesn’t require deep concentration or as high a level of quality as your main project to vibe code on the side while i’m waiting.
one of the benefits of it is that it sometimes doing other stuff often takes me down a rabbit hole of working on my own cli tools or other knickknacks that make my life easier.
We are slowly literally becoming the "unrealistic" developers often shown in movies: a terminal running a bunch of lines on one or two screens, us moving our attention between multiple windows, shipping multiple apps at once.
The idea of working on a side project while your AI is working on your main object would have been unfathomable a couple of years ago.
Staring at the black screen with the Black Screen app (blackscreen1.com).
Sword Fight? https://xkcd.com/303/
Work on side projects or plan the next step with another agent is what I usually do. For example I have been learning and coding in golang lately while llm does some grunt work for work tickets, I love it