Tagged articles
3 articles
Page 1 of 1
Cognitive Technology Team
Cognitive Technology Team
Dec 23, 2023 · Fundamentals

Tactical vs Strategic Programming: Understanding System Complexity and Design Principles

The article explains how tactical programming—prioritizing rapid feature delivery by piling code—creates system complexity through change amplification, cognitive load, and unknown unknowns, and advocates strategic programming that invests in design, reduces dependencies and ambiguity, and builds sustainable software architecture.

code qualitysoftware designstrategic programming
0 likes · 8 min read
Tactical vs Strategic Programming: Understanding System Complexity and Design Principles
Alibaba Terminal Technology
Alibaba Terminal Technology
Apr 21, 2022 · Fundamentals

Why Software Complexity Grows: From Tactical Tornadoes to Strategic Design

This article explores the nature of software complexity, contrasting tactical programming shortcuts with strategic architectural design, explains McCabe cyclomatic complexity and Ousterhout's perception, and offers practical insights and code examples to help engineers manage and reduce complexity in their systems.

architecturecomplexitysoftware design
0 likes · 20 min read
Why Software Complexity Grows: From Tactical Tornadoes to Strategic Design
21CTO
21CTO
Mar 3, 2022 · Fundamentals

Why Software Complexity Is Killing Developers and How to Tame It

The article explores the nature of software complexity, contrasting rational metrics like McCabe cyclomatic complexity with the subjective view of John Ousterhout, identifies symptoms such as change amplification, cognitive load and unknown unknowns, and proposes strategic design over tactical programming to control architectural decay.

architectural governancesoftware complexitysoftware design
0 likes · 21 min read
Why Software Complexity Is Killing Developers and How to Tame It