Agentic Code Through a Photographer's Lens
When digital cameras started to become popular, many of my photographer friends said digital photography would never replace film. That's because film has a broader shoulder – a term photographers use to describe the dynamic range that film could capture.
However, the passage of time saw digital cameras get better and better. Today, working photographers almost exclusively shoot on digital cameras, not only because the workflow is easier, but because the quality is exceptional. Moreover, shooting digitally provides greater opportunities to do things that are otherwise impossible on film.
What does this have to do with AI? I think the metaphor is fitting because though AI is less than perfect today (hallucinations and all), this is the worst that AI will ever be. It continues to get better with each passing day. The pace of innovation makes Moore's law seem glacial.
Over the past several weeks, I've been putting agentic code editors like Cursor, Windsurf and Replit (to name a few) through the paces and here's what I've learned so far:
- Don't expect to provide a prompt (however, detailed) and expect production grade code out the other end. There is a lot of code review, and re-direction. There are lots of errors too, which their agentic workflows try to handle as gracefully as possible. However, you should expect this as part of the process.
- Pay attention to what they're producing. AI code editors can produce a lot of code in a hurry, and often, will take off in a direction you never intended. You have stay focused on what you intended to do, otherwise you will end up somewhere else.
- Plan first, then build incrementally. It helps to have a plan and implement it in smaller chunks that can be tested as you go.
- As far as LLM's go, Claude still leads the way for coding, head and shoulders above ChatGPT or Gemini.
- Multi modal inputs are getting better. In addition to any prompts you provide, sometimes a sketch or screenshot to accompany the prompt goes a long way to produce more meaningful code.
- Agentic code generators are not a substitute for programmers. I have found them to be an excellent complement, much like a pair programmer. There's no getting around the fact that you must be able to read and understand what is being produced.
- There is no better way to build a minimum viable product (MVP) or prototype to get something in front of users to start providing feedback. This toolset, coupled with agile delivery, will put product teams on steroids.
I'm sure that in the weeks and months that follow, this list will continue to grow. However, based on everything I've seen so far, I'm convinced agentic coding will be the norm, and much sooner than we might realize.
Some implications for enterprise
- Guardrails for security and privacy will continue to dominate the conversation, as they should. We also need to figure out how to work with this new toolset without compromising intellectual property.
- Context matters, both literally and figuratively. As the context window of LLMs increases, the ability to have a more nuanced interaction greatly increases the quality of output. So does the ability to tie in our existing codebase and documentation.
- Software development teams will inevitably get smaller and more productive. In fact, every aspect of the software development lifecycle will see tremendous gains.
- Lastly, if I were to take a long shot, I'd say that there was a time when we kept applications alive because the people that built those systems were no longer around – giving birth to practically every legacy system. However, the ability to refactor and test code exponentially faster brings us one step closer to a world where we finally start to move off legacy systems. One can always dream I suppose.
Join the discussion on LinkedIn.