Why Write Code If LLMs Can Do It? Exploring Web App Experiments
Discover the importance of manual coding in an era dominated by LLMs. Join a web app experiment that highlights key insights for developers.

Can LLMs Replace Manual Coding in Web App Development?
In the tech world, large language models (LLMs) like OpenAI's ChatGPT and Google's Bard are changing software development. These tools can generate code, troubleshoot, and even build apps with less effort. This leads to a big question: Why bother with manual coding when LLMs can do it? This blog dives into the pros and cons of LLMs in coding, the value of manual programming, and an experiment comparing both methods.
How Are LLMs Changing Software Development?
LLMs are becoming integral to software development, offering:
- Quick generation of boilerplate code for web apps
- Instant troubleshooting guidance
- A fast track for beginners to grasp programming concepts
But, LLMs aren't perfect. Overreliance on them might weaken our grasp on programming basics, best practices, and our ability to solve problems.
What Limits LLMs in Coding?
LLMs have their flaws:
- Context Awareness: They often lose track in lengthy discussions or complex projects.
- Creativity: LLMs might not match the creative problem-solving of human developers.
- Code Quality: The code they generate can be hit or miss, potentially leading to security and performance issues.
The Case for Manual Coding
Coding by hand is crucial for deep learning and skill enhancement. Here's why it's still relevant:
- Problem-Solving Skills: It teaches developers to tackle and solve challenges efficiently.
- Code Optimization: Developers can craft optimized code that meets specific project requirements.
- Collaboration: Knowing the ins and outs of your code improves team collaboration and communication.
Web App Experiment: Manual vs. LLM Coding
I tested the effectiveness of manual coding against LLM-generated code by building a simple task manager app using Next.js and React.
Experiment Overview
- Framework: Next.js (for server-side rendering)
- UI Library: React (for UI development)
- LLM Tool: ChatGPT (for code snippets)
Experiment Steps
- Define Requirements: I listed the essential features for the task manager.
- LLM Code Generation: ChatGPT produced components and API routes.
- Manual Coding: I wrote the same components and routes, focusing on best practices.
Findings
- Time Efficiency: LLMs were faster, generating code in under 10 minutes, while manual coding took about 30 minutes.
- Code Quality: Manual coding resulted in optimized, readable code with better error handling.
- Debugging: Fixing issues in LLM-generated code required significant manual effort.
Insights from the Experiment
The experiment teaches us:
- LLMs can speed up coding but might introduce errors or inefficiencies.
- Manual coding ensures quality and deep understanding, crucial for success.
- Combining LLMs for routine tasks with manual coding for complex projects could be the best strategy.
Conclusion: Finding the Right Mix of LLMs and Manual Coding
As LLMs evolve, they'll play a bigger role in software development. Yet, manual coding's benefits—creativity, problem-solving, and code quality—are irreplaceable. Balancing LLM use with strong coding practices lets developers excel and adapt to the future of tech.
In essence, while LLMs offer powerful development tools, they should enhance, not replace, the craft of manual coding. Understanding both approaches allows developers to succeed in a rapidly evolving field.
Related Articles

Unleashing GPT-5.3-Codex-Spark for Coding Excellence
Explore the groundbreaking capabilities of GPT-5.3-Codex-Spark and how it can enhance your coding skills and productivity in software development.
Feb 12, 2026

Top Highlights from Git 2.52: New Features for Developers
Explore the key features and enhancements in Git 2.52, including improved performance, new functionalities, and user experience upgrades for developers.
Nov 22, 2025
Should We Even Have :closed? Exploring CSS State Management
Explore the debate around the CSS pseudo-class :closed. Is it necessary or does :not(:open) suffice? Dive into coding insights and best practices.
Nov 21, 2025
