Tag: codingagent

  • AI Coding Agent

    What is a Coding Agent?

    An AI coding agent is a software tool powered by an LLM (Large Language Model) or SLM (Small Language Model) that assists with software development tasks. These agents understand goals, generate full functions or apps, refactor code, fix bugs, write tests, and even collaborate across multiple files or repositories.

    Key Capabilities include

    • Code generation
    • Error detection and debugging
    • Code explanation and documentation
    • Automated refactoring
    • Multi-step planning and tool use

    A brief about IDEs

    Historically, Integrated Development Environments (IDEs) have been great in helping developers achieve their day to day activities with Highlighting Syntax errors, assist with Auto-completions, help with Code organising, Refactoring, Improve defect identification with Debugging & Running tools, Version control integration. All of these activities are useful but are limited to the list of frameworks and/or languages that the IDE support.

    Different IDEs were created to support different languages or frameworks. As an example JetBrains has different IDEs for Java (IntelliJ),Python (PyCharm), Data (DataGrip), Ruby (RubyMine).

    Similarly different companies created different IDEs such as Eclipse, VisualStudio, NetBeans with different capabilities

    How is it different from IDE support?

    With the support of Coding Agents, you can get all the capabilities that were previously provided by the specific IDEs across all (prominent) programming languages.

    This paved way for the IDE to be very light weight and different language support is obtained through plug-ins. Visual Studio Code is the most widely used IDE post-AI coding agents due to its versatility, robust AI integration (e.g., Copilot), and broad community support.

    How does it work?

    The Coding Agents took a great leap when the chat capability is introduced as Copilot Chat when the developers could provide a prompt and the Copilot agent generated the code. A simplified view of the interaction is as depicted below.

    What are available?

    Coding Agents can be categorised into types based on the interface they provide, LLMs they use in the background and their ability to iterate independently. This is greatly evolving space

    Interface based

    • Github Copilot – Plugin to Visual Studio Code
    • Windsurf – IDE
    • Claude Code
    • Cursor
    • Cline

    LLM based

    • Open AI
    • Claude
    • Gemini
    • DeepSeek

    Browser/Desktop based

    • Claude Code (Desktop)
    • Replit (Browser)
    • Devin (Browser)
    • Cursor (Desktop)

    Other ways to categorise the agents is based on deployment model (cloud vs local vs hybrid), Open Source vs Proprietary, Cost and accessibility based (Free vs Subscription)

    My experience with Coding Agents

    • Tools: Github Copilot, Windsurf, Claude Code, Replit
      • Github Copilot is the default and first coding agent I used. It has evolved in the last few months significantly and is very useful from prompt to auto corrections to agent coding
      • Windsurf is a forked version of VS Code repo with custom AI enhancements to make it more developer friendly to avoid VS Code’s limitations.
      • Claude Code is very useful desktop tool to work with entire projects. Though it is very useful in providing End to End solutions, it seemed very costly
      • Replit is a powerful agentic development environment where I could create an application with frontend, backend and a database with a clear description of problem statement. The fault tolerance is built into Replit to iteratively check the target state and the development continues.
    • Different LLMs that I used with Copilot
      • GPT-4o: Very useful in chat & edit mode.
      • Claude 3.5: Comparable to GPT-4o and excelled at refactoring/improving
      • Gemini 2.0: Great with ideas, structuring and crisp solutions. Better modular structure with in a class
      • GPT-4.1: Found better modular structuring and better coding results (Available for free till 30-Apr)
    • Different programming languages that I took AI Agent’s support
      • Tested with Java, Python for backend
      • React & Next JS for the front end
      • Postgres for the database
      • AWS CDK & Terraform for infra: Could only get the expected outputs on atleast the 3rd attempt
    • Different SDLC aspects that I covered
      • Unit tests
      • CI/CD via AWS Amplify/ AWS CDK and Vercel

    My learnings

    • Usability
      • Github Copilot stands out as the ease of access and zero cost to start with
    • Technical Usefulness
      • Claude Code is useful with a monthly membership to build applications with clearly defined requirements
      • Copilot with Claude 3.7 topped the code recommendations along with useful unit tests rather than generic tests
    • Concerns
      • Performance is not catered to by default. But when prompted, improvements are definitely provided.
      • Security – especially for the front end applications
      • Minimal reuse – As AI can generate code, every time new code is created though can be better
      • Outdated knowledge – As there is a cutoff date, code suggestions may not be upto date. In my case, Next JS had a vulnerability which wasn’t found in the code recommendations
    • Recommendations
      • Create clear context via the project requirement documents (PRDs)
      • Make sure relevant tools are accessible for better context and usage
      • Iterate over the results for better solutions. Considering Agent option is rolled out to wider users via Copilot or Replit, this can be easily achieved
      • Be careful while using open source MCP servers for tools for security constraints as you will be sharing API KEYs via external sites or tolls