670 S '05
Lecture 1
Lecture 2
Lecture 3
Lecture 4
Lecture 5
Lecture 6
Lecture 7
Lecture 8
Lecture 9
Lecture 10
Lecture 11
Lecture 12
Lecture 13

Lecture 7: Design Review: Carcassonne (2)

Egoless Programming

Creators naturally invest some of their ego into their products. Programmers are creators; this is precisely why we are attracted to this discipline and its professions. Investing an ego, however, often prevents us from accepting flaws. Criticism of our product is confused with personal criticism of our person.

People have recognized and understood this problem for a long time. Weinberger has suggested considering the notion of "egoless programming", i.e., creating programs as if they weren't yours. While this is a demanding standard, I request that you divest yourself from your product during code walks and that you use this chance to free your product from potentially harmful flaws. Keep in mind that this temporary "suspension of ego" helps you produce a better product than blind belief in yourself.


  • Weinberg. The Psychology of Programming. Van Nostrand, 1971.

  • Presenters: William McCarthy, Peter Markowsky

    Readers: Mike ?? (moderator), Reuben Taube (secretary), Ian Langworth (second reader)

    Presenters: Andrew Nutter-Upham, Martin Fowler

    Readers: ??, Andrew Sward (secretary), ??

    last updated on Tue Jun 9 22:03:19 EDT 2009generated with PLT Scheme