Abstract: "Complexity is the single major difficulty in the successful development of large-scale software systems. Following Brooks we distinguish accidental from essential difficulty, but disagree with his premise that most complexity remaining in contemporary systems is essential. We identify common causes of complexity and discuss general approaches which can be taken to eliminate them where they are accidental in nature. To make things more concrete we then give an outline for a potential complexity-minimizing approach based on functional programming and Codd's relational model of data."
- Andrew Nicholson
A fascinating transcript of an address to the American Psychological Association, that looks at the differences in the ways men and women act, and how that affects their roles in society and culture.
- Andrew Nicholson
Jeff Atwood and Joel Spolsky team up to create a new free resource for programmers everywhere. Will include articles and a podcast...
- Andrew Nicholson