Peter Miller (software engineer)
Peter Miller | |
---|---|
Born | Peter Alexander Miller 16 October 1960 |
Died | 27 July 2014 | (aged 53)
Nationality | Australian |
Occupation | Software Engineer |
Spouse(s) | Mary Therese Miller (nee Lynch) (married 198?-2014) |
Children | Rowan Miller (1989-present) |
Parent(s) |
|
Peter Miller (16 October 1960 – 27 July 2014) was an Australian software developer who wrote Recursive Make Considered Harmful[1][2] and created Aegis and cook. He also proposed a set of "laws" for modern software engineering and architecture in the early 1990s:
Miller's laws are:
- The number of interactions within a development team is O(n!) without controlled access to the baseline. If the development team does have controlled access to the baseline, interactions can be reduced to near O(n), where n is the number of developers and/or files in the source tree, whichever is larger.
- The baseline MUST always be in working order.
- The software build/construction process can be reduced to a directed, acyclical graph (DAG).
- It is necessary to build a rigid framework of selected components (aka the top level aegis design).
- The framework should not do any real work, and should instead delegate everything to external components. The external components should be as interchangeable as possible.
- The framework should use the Strategy pattern for most complex tasks.
References[]
- ^ Graham-Cumming, John (15 July 2005). "Recursive make Reloaded". Linux Magazine. Retrieved 13 April 2018.
- ^ "Google Scholar".
External links[]
- Debian Project mourns the loss of Peter Miller
- Archive of Miller's website including software, books, and papers
- Maintenance repository of Miller's Aegis on GitHub
- Maintenance repository of Miller's Cook tool on GitHub
- Home page of Miller's Aegis software configuration management tool on SourceForge
Categories:
- Software engineers
- Australian engineers
- 1960 births
- 2014 deaths