References

References that appear on the Nudge Cards

References to Books

[Alice 60] Martin Gardner (annotating Lewis Carroll). The Annotated Alice. Clarkson Potter 1960. ISBN 9780517029626

[Bentley 88] Bentley’s programming pearls

[Bowker & Star 99] Geoffrey C. Bowker and Susan Leigh Star. Sorting Things Out: Classification and its Consequences. MIT Press 1999. ISBN: 9780262024617

[Brooks 95] Frederick P. Brooks Jr. The Mythical Man-Month: Essays on Software Engineering.. Second edition, Addison Wesley 1995.

[Brooks 10] Frederick P. Brooks Jr. The Design of Design. Addison Wesley 2010. ISBN‎ 978-0201362985

[Cross 07] Nigel Cross. Designerly Ways of Knowing. Board of International Research in Design. Birkhäuser Architecture 2007.

[Lakatos 76] Imre Lakatos. Proofs and Refutations. Cambridge University Press 1976.

[Lampson 83] Hints for Computer System Design

[Norman 88] Donald Norman. The Psychology of Everyday Things. Basic Books 1988.

[How to Solve It 45] George Polya.  How To Solve It. Princeton University Press 1945.

[Pooh 26] A. A. Milne. Winnie-the-Pooh. Dutton, 1926.

[Proof 25] Adam Kucharski. Proof; The Art and Science of Certainty. Basic Books 2025.

[Schön 84] Donald A. Schön. 1984. The Reflective Practitioner: How Professionals Think in Action. Basic Books (1984).  ISBN 978-0465068784.

[Shapiro & Varian 99] Carl Shapiro and Hal R. Varian. 1999. Information Rules: A Strategic Guide to the Network Economy. Harvard Business Review Press, 1999. ISBN 978-0875848631

[Simon 96] Herbert A. Simon. 1996. The Sciences of the Artificial. MIT Press 1996. ISBN 9780262691918.

[Squires 86] Arthur M. Squires.  The Tender Ship: Governmental Management of Technological Change. Birkhauser 1986. ISBN 978-0817633127

[Visser 06] Willemien Visser. 2006. The Cognitive Artifacts of Designing. CRC Press 2006. ISBN 978-0805855111.

[Weinberg 71] Gerald Weinberg. The Psychology of Computer Programming. Van Nostrand 1971.

[Zen Moto 74] Robert Pirsig. Zen and the Art of Motorcycle Maintenance. Bantam 1973 ISBN 0-553-10310-5

References to Papers

[Brooks 86] Frederick P. Brooks Jr. No silver bullet: Essence and accident in software engineering.  Proc IFIP Tenth World Computer Conf, pp 1069-1076. Reprinted in [Brooks 95]

[Brooks 88] Frederick P. Brooks, Jr. Grasping Reality Through Illusion—Interactive Graphics Serving Science. Proc 1988 ACM SIGCHI Human Factors in Computer Systems Conf (CHI ’88) pp. 1-11.

[Carnegie Plan] Carnegie Plan for Education. See, e.g, the last page of [Manifesto 05]

[DeMillo, Lipton, Perlis 79] Richard A. De Millo, Richard J. Lipton, and Alan J. Perlis. 1979. Social processes and proofs of theorems and programs. Commun. ACM 22, 5 (May 1979), 271–280. https://doi.org/10.1145/359104.359106

[Hoare 72] C Anthony Hoare. Proof of Correctness of Data Structures.  Acta Informatica 1972.

[Jackson 95] Michael Jackson, The World and the Machine. ICSE ‘95.

[Kang & Shaw 24] Eunsuk Kang and Mary Shaw. 2024. tl;dr: Chill, y’all – AI will not devour SE. Onward! Essays, 2024.

[Manifesto 05] Mary Shaw (ed). Software Engineering for the 21st Century: A basis for rethinking the curriculum. Technical Report CMU-ISRI-05-108, Carnegie Mellon University, Institute for Software Research International, March 2005.

[Scaffidi, Shaw, Myers05] Christopher Scaffidi, Mary Shaw, and Brad Myers. 2005. Estimating the numbers of end users and end user programmers. 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC ’05), 2005, pp. 207–214, https://doi.org/10.1109/VLHCC.2005.34

[Scaffidi & Shaw 07] Christopher Scaffidi and Mary Shaw. 2007. Developing confidence in software through credentials and low-ceremony evidence. Presented at workshop, not in digital library. Online at NON-ARCHIVAL http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.407.4357&rep=rep1&type=pdf (accessed December 4, 2021).

[Shaw 80] Mary Shaw. 1980. The Impact of Abstraction Concerns on Modern Programming Languages.Proc IEEE special issue on Software Engineering 68, 9 (1980), 1119–1130. https://doi.org/10.1109/PROC.1980.11811 (invited).

[Shaw 90] Mary Shaw. 1990. Prospects for an Engineering Discipline of Software. IEEE Software 7, 6 (November 1990), 15–24. https://doi.org/10.1109/52.60586

[Shaw 96] Mary Shaw. 1996. Truth vs Knowledge: the difference between what a component does and what we know it does. In Proceedings of the 8th International Workshop on Software Specification and Design (IWSSD). https://doi.org/10.1109/IWSSD.1996.501165

[Shaw 03] Mary Shaw. Writing Good Software Engineering Research Papers. Mini-tutorial for ICSE 2003, Proc. Int’l Conf on Software Engineering (ICSE-2003), Portland OR, May 2003. doi: 10.1109/ICSE.2003.1201262

[Shaw 06] Mary Shaw. 2006. Strategies for Achieving Robustness in Coalitions of Systems. In NATO Workshop RTO IST-064, Building Robust Systems with Fallible Construction. https://www.sto.nato.int/publications/STO%20Meeting%20Proceedings/RTO-MP-IST-064/$$MP-IST-064-ALL.pdf 

[Shaw 20] Mary Shaw. 2020. Myths and Mythconceptions: What Does it Mean to be a Programming Language, Anyhow?. In HOPL IV, Fourth ACM SIGPLAN History of Programming Languages Conference (Proc. ACM Program. Lang., Vol. 4). 44. https://doi.org/10.1145/3480947

[Shaw 23] Mary Shaw. Aha! Strategies for Gaining Insights into Software Design. Workshopped at PLoP23: Pattern Languages of Programs Conference, October 2023. Revised version Proc. PLoP 2023: Proc 30th Conf onPattern Languages of Programs, ACM, 2023https://dl.acm.org/doi/10.5555/3721041.3721043

[Shaw & Petre 24] Mary Shaw and Marian Petre. 2024. Design spaces and how software designers use them: a sampler. In Designing ’24: 2024 International Workshop on Designing Software Proceedings. 8 pp. https://doi.org/10.1145/3643660.3643941

[Wicked 73] Horst W. J. Rittel and Melvin M. Webber. 1973. Dilemmas in a general theory of planning. Policy Sciences 4, 155–169 (1973). https://doi.org/10.1007/BF01405730

References to Other Sources

[Goodhart’s Law] [Harger 25] Brenda Bakker Harger, of CMU Entertainment Technology Center, in lecture at CMU 3/26/25

[Perlis epigrams] Alan Perlis. Epigrams in Programming. https://www.cs.yale.edu/homes/perlis-alan/quotes.html

Jim Horning, Butler Lampson, Allen Newell, I recall these insights from meetings but can’t put a date or citation on them.

[Simon memorial] This quote is all over the internet with attribution to Simon but without a source. It is, however, the centerpiece of the Simon memorial on the #CMU campus – so I’m confident in the attribution.

[Stuff I figured out] I can’t figure out who else to attribute this to, so I apparently figured it out for myself, and sometimes I wrote it down

Various other (possibly folkloric) attributions: Swiss Army, Timothy Leary, Socrates