<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/etc---the-principle-to-guide-engineering-al8u2ema7" -->

---
title: ETC - The principle to guide engineering | daily.dev
description: The ETC (Easy To Change) principle is proposed as the single unifying principle to evaluate all software engineering decisions. Rather than dogmatically...
canonical: https://daily.dev/posts/etc---the-principle-to-guide-engineering-al8u2ema7
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: ETC - The principle to guide engineering | daily.dev
og:description: The ETC (Easy To Change) principle is proposed as the single unifying principle to evaluate all software engineering decisions. Rather than dogmatically...
og:url: https://daily.dev/posts/etc---the-principle-to-guide-engineering-al8u2ema7
og:image: https://api.daily.dev/og/posts/al8u2eMa7.png
og:image:alt: ETC - The principle to guide engineering
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# ETC - The principle to guide engineering

**[BirkeyCo](https://daily.dev/sources/birkey)** · 7 min read · 0 upvotes · 0 comments

## Summary

The ETC (Easy To Change) principle is proposed as the single unifying principle to evaluate all software engineering decisions. Rather than dogmatically adopting paradigms like microservices vs monolith, top-down vs bottom-up design, or OO vs FP, engineers should ask whether a given approach makes their system easier to change. The post argues that blind adoption of any paradigm without this grounding question is the root cause of most engineering problems, and that ETC can serve as a litmus test for principles like SOLID, TDD, BDD, and DDD as well.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.birkey.co/2020-12-26-ETC-principle-to-ground-all.html>

## Similar posts on daily.dev

- [The Cost of Change in Software](https://daily.dev/posts/the-cost-of-change-in-software-zgqnzhu9w) · Ruby Flow · 0 upvotes · 0 comments
- [The Engineering of the Possible: Beyond the “Best Practices” Dogma](https://daily.dev/posts/the-engineering-of-the-possible-beyond-the-best-practices-dogma-jbljzq9xc) · Codemotion · 5 upvotes · 0 comments
- [The Programmer's Paradox](https://daily.dev/posts/the-programmer-s-paradox-0jiktgc9d) · Hacker News · 1 upvotes · 1 comments

---

Tags: [#general-programming](https://daily.dev/tags/general-programming), [#architecture](https://daily.dev/tags/architecture), [#microservices](https://daily.dev/tags/microservices), [#functional-programming](https://daily.dev/tags/functional-programming)

[View this post on daily.dev](https://daily.dev/posts/etc---the-principle-to-guide-engineering-al8u2ema7)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"ETC - The principle to guide engineering","url":"https://daily.dev/posts/etc---the-principle-to-guide-engineering-al8u2ema7","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/etc---the-principle-to-guide-engineering-al8u2ema7"},"datePublished":"2026-03-31T12:29:19.607Z","dateModified":"2026-03-31T12:45:43.678Z","description":"The ETC (Easy To Change) principle is proposed as the single unifying principle to evaluate all software engineering decisions. Rather than dogmatically...","image":"https://media.daily.dev/image/upload/s--0_ODbtD2--/f_auto/v1722860399/public/Placeholder%2008","thumbnailUrl":"https://media.daily.dev/image/upload/s--0_ODbtD2--/f_auto/v1722860399/public/Placeholder%2008","isAccessibleForFree":true,"articleSection":"BirkeyCo","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"BirkeyCo","logo":"https://media.daily.dev/image/upload/s--VCFLlkwb--/f_auto,q_auto/v1774960036/logos/birkey?_a=BAMAMiWQ0","url":"https://daily.dev/sources/birkey"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/etc---the-principle-to-guide-engineering-al8u2ema7","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"general-programming,architecture,microservices,functional-programming","timeRequired":"PT7M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"BirkeyCo","item":"https://daily.dev/sources/birkey"},{"@type":"ListItem","position":3,"name":"ETC - The principle to guide engineering"}]}
```

