Urgent.News

What's breaking now, across thousands of outlets.

Tech

Relevance Of Software Engineering In Web Apps

We live in the golden age of "vibe coding." Coined to describe the workflow of prompting an LLM, accepting diffs without reading them, and iterating purely on natural language until the UI looks right, vibe coding has lowered the barrier to building web applications to near zero. Today, anyone with a browser and a subscription to an AI coding agent can bring up a fully functional website from…

In the current era of AI-generated coding, the process of creating web applications has become remarkably simple. With just a browser and an AI coding assistant subscription, anyone can build a functional website from scratch, even including hosting. However, this ease of creation comes with significant risks and challenges that software engineering skills can address.

While typing constitutes only about 20% of software development, it is a crucial component that often gets overlooked in the hype surrounding AI coding. Coding involves translating logic into a programming language, enabling the creation of specific features or ideas. Software engineering, on the other hand, encompasses the design, security, testing, scaling, and maintenance of this logic over time in unpredictable and competitive conditions.

The reliance on AI-generated code can lead to several dangerous pitfalls. One such issue is the security blind spot, where AI models prioritize fulfilling prompts quickly and often skip essential security measures. Another problem is the self-referencing architecture rot, where LLMs replicate flaws from initial API routes across the entire codebase due to their reliance on existing code context.

Supply chain vulnerabilities and slopsquatting pose additional threats. When AI generates import statements, it frequently hallucinates non-existent package names, and attackers exploit this by registering malicious packages under these names. Furthermore, AI models often incorporate outdated dependencies with known vulnerabilities, leading to debugging and maintenance challenges.

The debugging and maintenance cliff becomes apparent when relying on unreviewed AI-coded apps. Accepting code without proper understanding can result in unexpected issues like race conditions, memory leaks, or concurrency bugs, especially when deployed in production environments. Without automated regression tests, CI/CD pipelines, or observability, teams face a cycle of guesswork when dealing with production issues.

Scalability and cost management are also affected by vibe-coded web applications. A database query that runs swiftly with test data can quickly overwhelm a server with real users. Vibe-coded backends often suffer from inefficient query patterns, missing indexes, and unbounded API endpoints, which can lead to costly scalability issues during viral situations.

To transition from pure vibe coding to engineered AI-driven development, developers must treat AI output as untrusted junior code. Each difference in AI-generated code should be carefully examined before merging. Proper architecture design, including database schema, authentication boundaries, and security models, should be established before allowing AI to generate implementations.

Implementing strict guardrails through configurations such as TypeScript, linters, static application security testing (SAST), and dependency audits within the CI pipeline can help prevent bad patterns from being deployed. Matching the generation speed of AI code with the verification speed of comprehensive unit and integration tests ensures that edge cases, permissions, and failure states are thoroughly verified, enabling the system to be implemented confidently.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

Hot experts, cold RAM: a big MoE on a box with more memory than VRAM

Two budgets, and only one of them is expensive Every local deployment spends against two budgets at once: the size of the model and the price of the memory holding it.

  • Strata is a memory-efficient inference engine for Mixture of Experts (MoE) models
  • It retains only active experts in memory, leaving others idle
  • DDR system memory is used for model weights during idle periods, instead of expensive VRAM

More from Thursday 12 November →