Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .github/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## [0.6.0](https://github.com/dwmkerr/hacker-laws/compare/v0.5.0...v0.6.0) (2026-05-19)


### Features

* add Second-System Effect ([040453d](https://github.com/dwmkerr/hacker-laws/commit/040453d1f7b5c34ffa5229384039974052d6a28c))
* add Second-System Effect ([99b1ae8](https://github.com/dwmkerr/hacker-laws/commit/99b1ae896cd216a37e6c0ac22851e3cfca5bf103))

## [0.5.0](https://github.com/dwmkerr/hacker-laws/compare/v0.4.0...v0.5.0) (2026-02-06)


Expand Down
2 changes: 1 addition & 1 deletion .github/release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.5.0"
".": "0.6.0"
}
25 changes: 25 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -760,6 +760,31 @@ See also:

https://www.amazon.sg/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882

### The Second-System Effect

[The Second-System Effect on Wikipedia](https://en.wikipedia.org/wiki/Second-system_effect)

[The Second-System Effect in _The Mythical Man-Month_](https://pages.cs.wisc.edu/~param/quotes/man-month.html)

> The second is the most dangerous system a man ever designs.
>
> (Frederick P. Brooks Jr.)

The Second-System Effect describes the tendency for a successful first system to be followed by an over-engineered or bloated second system. Frederick P. Brooks Jr. introduced the phrase in _The Mythical Man-Month_, where he argued that a first system is often built conservatively because its designers are still learning and proceed with restraint.

After that initial success, deferred ideas and increased confidence can make the second system more ambitious. This is relevant to rewrites, major version 2 projects and platform rebuilds: a replacement system can be useful when the first version has taught the team what the real problem is, but it can also become harder to build, understand and maintain if it attempts to solve too many speculative future needs at once.

See also:

- [Brooks' Law](#brooks-law)
- [Gall's Law](#galls-law)
- [The KISS principle](#the-kiss-principle)
- [YAGNI](#yagni)

Real-world examples:

- [OS/360](https://en.wikipedia.org/wiki/OS/360) - Brooks used IBM's OS/360 as a key example of the Second-System Effect in _The Mythical Man-Month_, contrasting its ambitious scope with earlier, simpler IBM operating systems.

### The Spotify Model

[The Spotify Model on Spotify Labs](https://labs.spotify.com/2014/03/27/spotify-engineering-culture-part-1/)
Expand Down
Loading