World Congress 2021 Jun 28, 2021

Antipatterns - nemesis of software development

Mustafa Toroman

Is a big ball of mud or toxic leadership silently killing your software project? Discover how to eliminate destructive antipatterns before they paralyze your engineering team.

Pause
Mute Enter Fullscreen
#1 about 3 min

Introduction and definition of software antipatterns

An overview of patterns versus antipatterns and their historical origins.

#2 about 1 min

Overcoming analysis paralysis in software projects

How overthinking and attempting to predict every scenario stalls development progress.

#3 about 2 min

Avoiding the bicycle shed effect in project discussions

Why teams waste time on trivial issues and how to focus on core problems.

#4 about 2 min

Managing a unified vision to prevent design by committee

The importance of strong architectural leadership when incorporating diverse team inputs.

#5 about 1 min

The dangers of using bleeding edge technologies prematurely

Balancing the desire for cutting-edge tools with the need for stable maturity.

#6 about 1 min

Dropping boat anchor code to clean up legacy systems

Identifying and removing unused legacy components to maintain clean source code.

#7 about 2 min

Handling profitable products to avoid the cash cow trap

Strategies for ongoing investment and innovation to prevent sudden obsolescence from competitors.

#8 about 1 min

Prioritizing immediate needs over building the cart before the horse

Keeping startup and MVP development grounded by focusing on immediately usable features.

#9 about 1 min

Recognizing logic failures in escalation of commitment

Acknowledging past mistakes quickly instead of persisting with failed project decisions.

#10 about 3 min

Toxic management styles that harm development teams

How micromanagement, mushroom management, and seagull management demoralize software engineering teams.

#11 about 2 min

Evaluating career transitions and the peter principle risk

Why promoting top developers into management or architecture can sometimes backfire.

#12 about 3 min

Breaking down team silos and overcoming group thinking

Strategies for integrating isolated departments and preventing echo chambers in long-serving teams.

#13 about 3 min

Surviving death marches and understanding delays via Brooks's law

The reality of failing projects pushed past deadlines and why adding resources slows velocity.

#14 about 2 min

Guarding project quality by controlling scope creep

Understanding how adding features affects cost, time, and ultimately product quality.

#15 about 3 min

Avoiding wasted effort with overengineering and gold plating

How attempting to predict future scenarios and adding unnecessary polish detracts from core requirements.

#16 about 2 min

The damage caused by presenting smoke and mirrors

Why mocking up unimplemented features for demos creates unmanageable technical debt.

#17 about 4 min

Refactoring architectural messes like the big ball of mud

Identifying unmaintainable structures such as lava flow, spaghetti code, and lasagna code.

#18 about 2 min

Diagnosing abstraction inversion and circular dependencies

Exposing internal functionalities explicitly and preventing tightly coupled package failures.

#19 about 2 min

Distributing logic to fix god objects and busy waitings

Preventing logic bottlenecks, useless pass-through classes, and continuous resource-consuming polls.

#20 about 2 min

Implementing robust logic to replacing coding by exception

Structuring general exception cases rather than handling each error manually or hiding error messages entirely.

#21 about 2 min

Balancing variable management between hard and soft coding

Utilizing database configurations appropriately rather than embedding assumptions in source code.

#22 about 4 min

Cultivating code comprehension over cargo cult programming

Understanding architectural decisions versus blindly following patterns or copy and pasting snippets.

#23 about 3 min

Exploring right tools to solve the golden hammer effect

Choosing technologies based on the project rather than familiar tools, while managing dependency versions cleanly.

Matching moments

5:00 min

Navigating complexity and anti-patterns in modern software architecture

Mihaela-Roxana Ghidersa · LIVE

2:20 min

How the inevitable march of time breaks software patterns

Peter Kröner Peter Kröner · World Congress 2023

4:10 min

Preventing developer burnout by avoiding toxic productivity trends

Katja Träumner

3:40 min

Identifying core challenges in modern software development

Markus Eisele Markus Eisele · World Congress 2024

4:11 min

Applying targeted practices to reduce waste and technical debt

Tobias Modig · LIVE

1:53 min

Reducing accidental complications in software architecture

Nadeen Hussein Nadeen Hussein · World Congress 2024

Upcoming sessions on this topic

Open session

World Congress 2026 North America

September 25, 2026 · 12:20–12:50

Stage 9

Designing APIs That Survive AI Agents at Scale

Phani Pendurthi

Mastercard, Principal Software Engineer

Phani Pendurthi
Open session

World Congress 2026 North America

September 24, 2026 · 16:10–16:40

Outdoor Stage

When Humans Stop Writing Code: Rethinking Languages, Compilers, and Responsibility

Simon Auer

Organizer of flutter vienna meetup and CEO of marqably

Simon Auer
Open session

World Congress 2026 North America

September 25, 2026 · 14:10–14:40

Stage 1

The Broken Rung: How AI is Rebuilding Software Development from the Ground Up

Tomislav Tipurić

Chief Technology Officer, Nephos

Tomislav Tipurić
Open session

World Congress 2026 North America

September 24, 2026 · 15:30–16:00

Stage 3

The New Bottleneck in Software Development

Aditya Jayaprakash

Co-Founder & CEO at Blacksmith

Aditya Jayaprakash
Open session

World Congress 2026 North America

September 25, 2026 · 14:50–15:20

Outdoor Stage

Your Brain Is Lying to You: Cognitive Biases in Development

Kate Astrid

Senior Product Engineer

Kate Astrid
Open session

World Congress 2026 North America

September 24, 2026 · 16:00–18:00

Stage 11

Practical Threat Modeling for Software Developers

Mudassir Syed

Lead Security Software Engineer

Mudassir Syed