7 unwritten software engineering laws learned the hard way
By
Anton Zaides
Baker's choice. Dense with flavour, light on filler.
Summary
The article discusses unwritten rules in software engineering that experienced engineers learn through trial and error. It presents 7 practical laws that go beyond the famous named laws (like Hyrum's, Conway's, Zawinski's), focusing on hard-earned lessons from breaking things in production. The author aims to help newer engineers avoid common painful mistakes by sharing these unwritten principles that every seasoned engineer knows but rarely documents.
Key quotes
· 4 pulledBeyond the named laws, there are many unwritten rules every engineer who's been around for a while just knows.
You learn them by breaking things and swearing you'll never do it again.
As everybody and their mother thinks they can build great software right now, I decided to help them avoid a bit of pain.
Here are 7 laws every engineer has broken at least once, learned the hard way
You might also wanna read
Software Engineering Principles and Patterns: 56 Key Laws
The article presents a collection of 56 principles and patterns that influence software systems, teams, and decision-making in software engi
Reconsidering Five Common Software Engineering Practices
The article critiques five common software engineering practices that the author believes should be reconsidered: 1) The 'don't reinvent the
Understanding Hyrum's Law in Software Engineering
The article discusses 'Hyrum's Law,' an observation in software engineering stating that with enough users of an API, all observable behavio
How AI Coding Tools Are Teaching New Lessons About Software Development Principles
The article explores how large language models (LLMs) and AI-driven coding workflows are revealing new insights about software development p
Learning Software Architecture: Advice for Scientist Programmers
A response to a researcher physicist asking about learning software design skills. The author shares insights from their experience in a bio
The Limitations of LLMs in Software Engineering: Beyond Just Writing Code
The article discusses the limitations of Large Language Models (LLMs) in building software, emphasizing the iterative and mental-model-drive
