@mitchellh this is pretty spot on with my journey. Phase 1 & 2 are always awkward. Flashbacks to learning vim motions and pair programming while "almost" being proficient 😅
Shocker - agentic coding also requires learning it.
@kejne @mitchellh I'm curious, do you use pair programming routinely and efficiently?
I've done it occasionally and it's helpful. I'd put it in the same category with sparring i.e. rubberducking with a colleague - it helps when you're stuck and depleted the obvious first options and/or in need of a change.
Usually it's some specific item or ticket and there's an oppotunity to use two heads for it. One on the computer and one as the codriver. After a swift half hour it usually diffuses to "I'll take it from here, thanks". At work there's always a bit of pressure not to "waste" other people's time and pairing up for extended periods starts to feel like it's nearing diminishing returns.
I've also tried mob programming in a student project which was interesting. However I haven't had the people or the energy to drive further experiments to dig more into these. I wonder if there's still some corners unturned for me.
@rojun I've been using mob programming effectively in several teams. It has been extremely helpful to build team culture rather than the direct output I would say. A new team player with mixed experience taking turns to work on the code. (Got a blog post about it on my homepage, btw)
Key points: rotate often, git handover, create an environment of trust.
Same with pair programming really. I always leaned towards several smaller mobs or pairs that swarm rather than one big one.
With AI, things have changed a bit I think, but essences remain the same. Now you might pair up and learn how to use agents together for one (Also blog post)