Convention Over Configuration
A software design paradigm that reduces decisions developers need to make by providing sensible defaults based on conventions.
Also known as: Coding by Convention, CoC
Category: Software Development
Tags: software-design, frameworks, programming, best-practices, productivity
Explanation
Convention Over Configuration is a software design paradigm that seeks to decrease the number of decisions developers need to make by providing sensible defaults. Instead of requiring explicit configuration for every aspect, the framework assumes standard conventions unless told otherwise. Key benefits include: (1) Reduced boilerplate - less configuration code to write and maintain, (2) Faster onboarding - new developers can follow established patterns, (3) Consistency - projects using the same framework look similar, (4) Focus on unique logic - developers spend time on business logic, not setup. Examples include: Ruby on Rails naming conventions (a Post model maps to a posts table), Next.js file-based routing, and Maven's standard directory layout. The trade-off is flexibility—convention-based systems may fight you when you need to deviate. The pattern is also called 'coding by convention.'
Related Concepts
← Back to all concepts