SShortSingh.
Back to feed

Gall's Law: Why Complex Systems Must Grow From Simple Ones That Work

0
·1 views

Gall's Law, formulated by John Gall in the 1970s, states that every working complex system evolved from a simpler working system, and any complex system designed from scratch is destined to fail. Software teams often fall into the trap of architecting elaborate distributed systems from day one, resulting in untested component interactions and costly integration failures. The article argues this pattern, observed in hospital management systems decades ago, repeats itself consistently in modern software development. A debate emerges around whether generative AI changes this equation, since AI agents can scaffold entire distributed systems in hours rather than sprints. However, the authors conclude that AI-generated complexity still lacks the real-world validation that only incremental production exposure provides, making Gall's Law equally applicable to human and machine-built systems.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

How to Set Up an Apache Virtual Host on a Local LAMP Server

Setting up a virtual host on a local LAMP stack requires creating an Apache configuration file under /etc/apache2/sites-available/ with directives such as ServerName, DocumentRoot, and Directory permissions. Once the config file is saved, the site must be enabled using the a2ensite command, followed by reloading the Apache service via systemctl. The local domain, such as example.sandbox, must then be mapped to 127.0.0.1 by editing the system's /etc/hosts file. A corresponding web root directory should be created under /var/www/ and ownership assigned to the current user and the www-data group. After these steps, the virtual host becomes accessible through a browser at the configured local domain.

0
ProgrammingDEV Community ·

Why Browser-Level Behaviors Like Permissions and Notifications Break Automation Suites

Modern web applications increasingly rely on browser-level features — such as permissions, push notifications, geolocation, and email-based authentication — that extend well beyond a single tab or page interaction. These factors make automated testing significantly more complex, as test suites must account for varied permission states, notification deep-links, and multi-system email flows rather than simple click-and-verify scenarios. Common brittle points include inbox harnesses that assume stable subject lines and instant delivery, and permission tests that only cover the 'Allow' case while ignoring denial, dismissal, or revocation. Experts recommend treating email inboxes and browser storage as structured test infrastructure, using unique addresses or correlation IDs and verifying both the message produced and the resulting browser journey. Robust test coverage requires mapping the full agreement between the application, browser, operating environment, and external services rather than testing each component in isolation.

0
ProgrammingDEV Community ·

3 Next.js Micro-Interactions That Give Web Apps a Premium Feel

A developer at Ninth Node has outlined three micro-interaction techniques for Next.js applications aimed at improving user experience beyond basic functionality. The first involves a mouse-tracking radial gradient on card components, replacing standard CSS hover states with a more immersive cursor-following glow effect. The second uses Framer Motion to stagger the entrance of elements as users scroll into new sections, rather than fading all content in simultaneously. The third recommends fluid typography using CSS clamp() to scale headings smoothly across screen sizes without relying on fixed breakpoints. Together, these techniques are presented as practical ways to elevate a modern web interface from functional to polished.

0
ProgrammingDEV Community ·

InsForge MCP Outperforms Supabase MCP on Claude Sonnet 4.6 in Updated Benchmark

InsForge has published updated MCPMark v2 benchmark results comparing its MCP tool against Supabase MCP, this time using Anthropic's Claude Sonnet 4.6 model across the same 21 real-world Postgres database tasks. InsForge achieved 42.86% strict Pass⁴ accuracy versus Supabase MCP's 33.33%, while consuming 2.4 times fewer tokens per run — a efficiency gap that has widened significantly since the Sonnet 4.5 benchmarks. Supabase MCP's token usage actually increased from 11.6 million to 17.9 million tokens per run with the newer model, while InsForge's usage slightly decreased from 8.2 million to 7.3 million. InsForge attributes its advantage to surfacing structured backend context — such as record counts, RLS policies, and foreign keys — before the agent acts, reducing the need for costly discovery queries. The findings suggest that as AI models grow more capable, the performance penalty for lacking structured backend context increases rather than diminishes.

Gall's Law: Why Complex Systems Must Grow From Simple Ones That Work · ShortSingh