Building Software Together

Appendix B: Bibliography

Zahra Shakeri Hossein Abad, Oliver Karras, Kurt Schneider, Ken Barker, and Mike Bauer. Task interruption in software development projects. In Proc. EASE'18. 2018. doi:10.1145/3210459.3210471.
Janet Abbate. Recoding Gender: Women's Changing Participation in Computing. MIT Press, 2012. ISBN 978-0262534536.
Rabe Abdalkareem, Olivier Nourry, Sultan Wehaibi, Suhaib Mujahid, and Emad Shihab. Why do developers use trivial packages? an empirical case study on npm. In Proc. ESEC/FSE'17. ACM Press, 2017. URL:, doi:10.1145/3106237.3106267.
Edwin G. Aiken, Gary S. Thomas, and William A. Shennum. Memory for a lecture: effects of notes, lecture rate, and informational density. Journal of Educational Psychology, 1975. doi:10.1037/h0076613.
Beatrice Åkerblom and Tobias Wrigstad. Measuring polymorphism in python programs. In Proc. DLS'15. 2015. doi:10.1145/2816707.2816717.
Daniel A. Almeida, Gail C. Murphy, Greg Wilson, and Mike Hoye. Do software developers understand open source licenses? In Proc. ICPC'17. 2017. doi:10.1109/ICPC.2017.7.
B.C.D. Anda, D.I.K. Sjøberg, and A. Mockus. Variability and reproducibility in software engineering: a study of four companies that developed the same system. TSE, 5 2009. URL:, doi:10.1109/tse.2008.89.
Jorge Aranda and Gina Venolia. The secret life of bugs: going past the errors and omissions in software repositories. In Proc. ICSE'09. 2009. doi:10.1109/ICSE.2009.5070530.
Karen Armstrong. The Great Transformation: The Beginning of Our Religious Traditions. Vintage Canada, 2007. ISBN 978-0676974669.
Valerie Aurora and Mary Gardiner. How to Respond to Code of Conduct Reports. Frame Shift Consulting LLC, 2018. ISBN 978-1386922575.
Tapio Auvinen, Nickolas Falkner, Arto Hellas, Petri Ihantola, Ville Karavirta, and Otto Seppala. Relation of individual time management practices and time management of teams. In FIE'20. 2020. doi:10.1109/fie44824.2020.9274203.
Alberto Bacchelli and Christian Bird. Expectations, outcomes, and challenges of modern code review. In Proc. ICSE'13. 2013.
Jean H. Baker. Sisters: The Lives of America's Suffragists. Hill and Wang, 2006. ISBN 978-0809087037.
Helena Barke and Lutz Prechelt. Role clarity deficiencies can wreck agile teams. PeerJ Computer Science, 2019. doi:10.7717/peerj-cs.241.
Victor R. Basili and Richard W. Selby. Comparing the effectiveness of software testing strategies. TSE, 1987. doi:10.1109/tse.1987.232881.
Brett A. Becker, Graham Glanville, Ricardo Iwashima, Claire McDonnell, Kyle Goslin, and Catherine Mooney. Effective compiler error message enhancement for novice programming students. CSE, 2016. doi:10.1080/08993408.2016.1225464.
Andrew Begel and Thomas Zimmermann. Analyze this! 145 questions for data scientists in software engineering. In Proc. ICSE'14. ACM Press, 2014. URL:, doi:10.1145/2568225.2568233.
Mahnaz Behroozi, Chris Parnin, and Titus Barik. Hiring is broken: what do developers say about technical interviews? In Proc. VL/HCC'19. 2019. doi:10.1109/VLHCC.2019.8818836.
Mahnaz Behroozi, Shivani Shirolkar, Titus Barik, and Chris Parnin. Debugging hiring: what went right and what went wrong in the technical interview process. In Proc. ICSE'20. 2020. doi:10.1145/3377815.3381372.
Mahnaz Behroozi, Shivani Shirolkar, Titus Barik, and Chris Parnin. Does stress impact technical interview performance? In Proc. ESEC/FSE'20. 2020. doi:10.1145/3368089.3409712.
Moritz Beller, Niels Spruit, Diomidis Spinellis, and Andy Zaidman. On the dichotomy of debugging behavior among programmers. In Proc. ICSE'18. 2018. doi:10.1145/3180155.3180175.
Moritz Beller, Georgios Gousios, Annibale Panichella, Sebastian Proksch, Sven Amann, and Andy Zaidman. Developer testing in the ide: patterns, beliefs, and behavior. TSE, 2019. doi:10.1109/tse.2017.2776152.
Gal Beniamini, Sarah Gingichashvili, Alon Klein Orbach, and Dror G. Feitelson. Meaningful identifier names: the case of single-letter variables. In Proc. ICPC'17. Institute of Electrical and Electronics Engineers (IEEE), 5 2017. URL:, doi:10.1109/icpc.2017.18.
Patricia Benner. From Novice to Expert: Excellence and Power in Clinical Nursing Practice. Pearson, 2000. ISBN 978-0130325228.
Isaiah Berlin. The Proper Study of Mankind: An Anthology of Essays. Farrar Straus and Giroux, 2000. ISBN 978-0374527174.
Ethan S. Bernstein and Stephen Turban. The impact of the 'open' workspace on human collaboration. Philosophical Transactions of the Royal Society B: Biological Sciences, 2018. doi:10.1098/rstb.2017.0239.
Nicolas Bettenburg, Sascha Just, Adrian Schröter, Cathrin Weiss, Rahul Premraj, and Thomas Zimmermann. What makes a good bug report? In Proc. SIGSOFT'08. 2008. doi:10.1145/1453101.1453146.
Katerine Bielaczyc, Peter L. Pirolli, and Ann L. Brown. Training in self-explanation and self-regulation strategies: investigating the effects of knowledge acquisition activities on problem solving. Cognition and Instruction, 1995. doi:10.1207/s1532690xci1302_3.
Dave Binkley, Marcia Davis, Dawn Lawrie, Jonathan I. Maletic, Christopher Morrell, and Bonita Sharif. The impact of identifier style on effort and comprehension. ESE, 2012. doi:10.1007/s10664-012-9201-4.
Christian Bird, Nachiappan Nagappan, Brendan Murphy, Harald Gall, and Premkumar Devanbu. Don't touch my code! In Proc. FSE'11. ACM Press, 2011. URL:, doi:10.1145/2025113.2025119.
Barry Boehm. Software Engineering Economics. Prentice-Hall, 1981. ISBN 978-0138221225.
Mark Bohay, Daniel P. Blakely, Andrea K. Tamplin, and Gabriel A. Radvansky. Note taking, review, memory, and comprehension. American Journal of Psychology, 2011. doi:10.5406/amerjpsyc.124.1.0063.
David Bollier. Think Like a Commoner: A Short Introduction to the Life of the Commons. New Society Publishers, 2014. ISBN 978-0865717688.
Jelmer P. Borst, Niels A. Taatgen, and Hedderik van Rijn. What makes interruptions disruptive? In Proc. CHI'15. 2015. doi:10.1145/2702123.2702156.
Stewart Brand. How Buildings Learn: What Happens After They're Built. Penguin USA, 1995. ISBN 978-0140139969.
Stephen D. Brookfield and Stephen Preskill. The Discussion Book: 50 Great Ways to Get People Talking. Jossey-Bass, 2016. ISBN 978-1119049715.
Jere E. Brophy. Research on the self-fulfilling prophecy and teacher expectations. Journal of Educational Psychology, 1983. doi:10.1037/0022-0663.75.5.631.
Michael Jacoby Brown. Building Powerful Community Organizations: A Personal Guide to Creating Groups that Can Solve Problems and Change the World. Long Haul Press, 2007. ISBN 978-0977151806.
Amy Brown and Greg Wilson, editors. The Architecture of Open Source Applications: Elegance, Evolution, and a Few Fearless Hacks. Lulu, 2011. ISBN 978-1257638017.
Amy Brown and Greg Wilson, editors. The Architecture of Open Source Applications: Structure, Scale, and a Few More Fearless Hacks. Lulu, 2012. ISBN 978-0201103427.
Amy Brown and Michael DiBernardo, editors. 500 Lines or Less: Experienced Programmers Solve Interesting Problems. Lulu, 2016. ISBN 978-1329871274.
Neil C. C. Brown and Amjad Altadmri. Novice java programming mistakes. TCE, 2017. doi:10.1145/2994154.
Bruce Bueno de Mesquita and Alastair Smith. The Dictator's Handbook: Why Bad Behavior is Almost Always Good Politics. PublicAffairs, 2012. ISBN 978-1610391849.
Beleicia B. Bullock, Fernando L. Nascimento, and Stacy A. Doore. Computing ethics narratives: teaching computing ethics and the impact of predictive algorithms. In Proc. ICSE'21. 2021. doi:10.1145/3408877.3432468.
Alex Butterworth. The World That Never Was: A True Story of Dreamers, Schemers, Anarchists and Secret Agents. Vintage Books, 2011. ISBN 978-0099551928.
Mario Casciaro and Luciano Mammino. Node.js Design Patterns. Packt, 2020. ISBN 978-1839214110.
Marcelo Cataldo, James D. Herbsleb, and Kathleen M. Carley. Socio-technical congruence: a framework for assessing the impact of technical and work dependencies on software development productivity. In ESEM'08. 2008. doi:10.1145/1414004.1414008.
Mike Caulfield. Choral explanations. 2016. URL:
Scott Chacon and Ben Straub. Pro Git. Apress, 2014. ISBN 978-1484200773.
Souti Chattopadhyay, Nicholas Nelson, Audrey Au, Natalia Morales, Christopher Sanchez, Rahul Pandita, and Anita Sarma. A tale from the trenches: cognitive biases and software development. In Proc. ICSE'20. 2020. doi:10.1145/3377811.3380330.
Mauro Cherubini, Gina Venolia, Rob DeLine, and Amy J. Ko. Let's go to the whiteboard: how and why software developers use drawings. In Proc. CHI'07. 2007. doi:10.1145/1240624.1240714.
Sapna Cheryan, Victoria C. Plaut, Paul G. Davies, and Claude M. Steele. Ambient belonging: how stereotypical cues impact gender participation in computer science. Journal of Personality and Social Psychology, 2009. doi:10.1037/a0016239.
Michelene T. H. Chi, Miriam Bassok, Matthew W. Lewis, Peter Reimann, and Robert Glaser. Self-explanations: how students study and use examples in learning to solve problems. Cognitive Science, 1989. doi:10.1207/s15516709cog1302_1.
Jason Cohen. Modern code review. In Andy Oram and Greg Wilson, editors, Making Software. 2010.
Noam Cohen. After years of abusive e-mails, the creator of linux steps aside. 2018. URL:
Lena Cohen, Heila Precel, Harold Triedman, and Kathi Fisler. A new model for weaving responsible computing into courses across the cs curriculum. In Proc. ICSE'21. 2021. doi:10.1145/3408877.3432456.
Melvin E. Conway. How do committees invent. Datamation, 1968.
Mary Rose Cook. Gitlet. 2016. URL:
Caroline Criado Perez. Invisible Women: Data Bias in a World Designed for Men. Harry N. Abrams, 2019. ISBN 978-1419729072.
Mihaly Csikszentmihalyi. Flow: The Psychology of Optimal Experience. Harper, 1991. ISBN 978-0060920432.
Neil Davidson. Don't Just Roll the Dice - A Usefully Short Guide to Software Pricing. Red Gate Books, 2009. ISBN 978-1906434380.
Maurice Dawson, Darrell Burrell, Emad Rahim, and Stephen Brewster. Integrating software assurance into the software development life cycle. Information Systems Technology and Planning, 2010.
Pedro De Bruyckere, Paul A. Kirschner, and Casper D. Hulshof. Urban Myths about Learning and Education. Academic Press, 2015. ISBN 978-0128015377.
Francisco Gomes de Oliveira Neto, Richard Torkar, Robert Feldt, Lucas Gren, Carlo A. Furia, and Ziwei Huang. Evolution of statistical analysis in empirical software engineering research: current state and steps forward. JSS, 2019. doi:10.1016/j.jss.2019.07.002.
Enrico di Bella, Ilenia Fronza, Nattakarn Phaphoom, Alberto Sillitti, Giancarlo Succi, and Jelena Vlasenko. Pair programming and software defects: a large, industrial case study. TSE, 2013. doi:10.1109/TSE.2012.68.
David Didau and Nick Rose. What Every Teacher Needs to Know About Psychology. John Catt Educational, 2016. ISBN 978-1909717855.
Frank Dobbin and Alexandra Kalev. The promise and peril of sexual harassment programs. PNAS, 2019. URL:, doi:10.1073/pnas.1818477116.
Frank Dobbin and Alexandra Kalev. Why sexual harassment programs backfire. 2020. URL:
Deborah A. Donovan, Georgianne L. Connell, and Daniel Z. Grunspan. Student learning outcomes and attitudes using three methods of group formation in a nonmajors biology class. CBE—Life Sciences Education, 2018. doi:10.1187/cbe.17-12-0283.
Chuck Easttom. Computer Security Fundamentals. Pearson, 2019. ISBN 978-0135774779.
Stephen H. Edwards, Jason Snyder, Manuel A. Pérez-Quiñones, Anthony Allevato, Dongkwan Kim, and Betsy Tretola. Comparing effective and ineffective behaviors of student programmers. In Proc. ICER'09. 2009. doi:10.1145/1584322.1584325.
Michael Eichberg, Ben Hermann, Mira Mezini, and Leonid Glanz. Hidden truths in dead software paths. In Proc. FSE'15. 2015. doi:10.1145/2786805.2786865.
Khaled El Emam, Saïda Benlarbi, Nishith Goel, and Shesh N. Rai. The confounding effect of class size on the validity of object-oriented metrics. TSE, 2001. doi:10.1109/32.935855.
Joanna Eley and Alexi Marmot. Understanding Offices: What Every Manager Needs to Know about Office Buildings. Penguin, 1995. ISBN 978-0140169126.
Stefan Endrikat, Stefan Hanenberg, Romain Robbes, and Andreas Stefik. How do api documentation and static typing affect api usability? In Proc. ICSE'14. ACM Press, 2014. URL:, doi:10.1145/2568225.2568299.
Nathan L. Ensmenger. The Computer Boys Take Over: Computers, Programmers, and the Politics of Technical Expertise. MIT Press, 2012. ISBN 978-0262517966.
Hakan Erdogmus, Maurizio Morisio, and Marco Torchiano. On the effectiveness of test-first approach to programming. TSE, 2005. doi:10.1109/TSE.2005.37.
Virginia Eubanks. Automating Inequality: How High-Tech Tools Profile, Police, and Punish the Poor. Picador, 2019. ISBN 978-1250215789.
Fabian Fagerholm, Marco Kuhrmann, and Jürgen Münch. Guidelines for using empirical studies in software engineering education. PeerJ Computer Science, 2017. doi:10.7717/peerj-cs.131.
Michelle Z. Farland, Xiaoying Feng, Linda S. Behar-Horenstein, and Diane E. Beck. Impact of team formation method on student team performance across multiple courses incorporating team-based learning. American Journal of Pharmaceutical Education, 2019. doi:10.5688/ajpe7030.
Eugene Farmer. The gatekeeper's guide, or how to kill a tool. IEEE Software, 2006. doi:10.1109/ms.2006.174.
Michael C. Feathers. Working Effectively with Legacy Code. Prentice-Hall, 2004. ISBN 978-0131177055.
Rodrigo Ferreira and Moshe Y. Vardi. Deep tech ethics: an approach to teaching social justice in computer science. In Proc. ICSE'21. 2021. doi:10.1145/3408877.3432449.
Sally Fincher, Marian Petre, and Martyn Clarke. Computer Science Project Work: Principles and Pragmatics. Springer, 2001. ISBN 978-1852333577.
Lars Fischer and Stefan Hanenberg. An empirical investigation of the effects of type systems and code completion on api usability using typescript and javascript in ms visual studio. In Proc. DLS'15. 2015. doi:10.1145/2816707.2816720.
Benjamin Floyd, Tyler Santander, and Westley Weimer. Decoding the representation of code in the brain: an fmri study of code review and expertise. In Proc. ICSE'17. 2017. doi:10.1109/ICSE.2017.24.
Karl Fogel. Producing Open Source Software. O'Reilly, 2005. ISBN 978-0596007591.
Karl Fogel. Producing open source software (updated). 2020. URL:
Denae Ford, Justin Smith, Philip J. Guo, and Chris Parnin. Paradise unplugged: identifying barriers for female participation on stack overflow. In Proc. FSE'16. ACM Press, 2016. URL:, doi:10.1145/2950290.2950331.
Nicole Forsgren, Jez Humble, and Gene Kim. Accelerate: Building and Scaling High Performing Technology Organizations. IT Revolution Press, 2018. ISBN 978-1942788331.
Nicole Forsgren, Margaret-Anne Storey, Chandra Maddila, Thomas Zimmermann, Brian Houck, and Jenna Butler. The space of developer productivity. ACM Queue, 2021. doi:10.1145/3454122.3454124.
Martin Fowler. Refactoring. Addison-Wesley Professional, 2018. ISBN 978-0134757599.
David France. How to Survive a Plague: The Inside Story of How Citizens and Science Tamed AIDS. Knopf, 2016. ISBN 978-0307700636.
Harry G. Frankfurt. On Bullshit. Princeton University Press, 2005. ISBN 978-0691122946.
Peter Frase. Four Futures: Life After Capitalism. Verso, 2016. ISBN 978-1781688137.
Jo Freeman. The tyranny of structurelessness. The Second Wave, 1972. doi:10.1353/wsq.2013.0072.
Davide Fucci, Giuseppe Scanniello, Simone Romano, Martin Shepperd, Boyce Sigweni, Fernando Uyaguari, Burak Turhan, Natalia Juristo, and Markku Oivo. An external replication on the effects of test-driven development using a multi-site blind analysis approach. In Proc. ESEM'16. ACM Press, 2016. URL:, doi:10.1145/2961111.2962592.
Davide Fucci, Hakan Erdogmus, Burak Turhan, Markku Oivo, and Natalia Juristo. A dissection of the test-driven development process: does it really matter to test-first or to test-last? TSE, 7 2017. URL:, doi:10.1109/tse.2016.2616877.
Davide Fucci, Giuseppe Scanniello, Simone Romano, and Natalia Juristo. Need for sleep: the impact of a night of sleep deprivation on novice developers' performance. TSE, 2020. doi:10.1109/tse.2018.2834900.
Zheng Gao, Christian Bird, and Earl T. Barr. To type or not to type: quantifying detectable bugs in javascript. In ICSE'17. 2017. doi:10.1109/ICSE.2017.75.
Danielle Gaucher, Justin Friesen, and Aaron C. Kay. Evidence that gendered wording in job advertisements exists and sustains gender inequality. Journal of Personality and Social Psychology, 2011. doi:10.1037/a0022530.
Gretchen Gavett. What research tells us about how women are treated at work. 2017. URL:
Atul Gawande. The Checklist Manifesto: How to Get Things Right. Picador, 2011. ISBN 978-0312430009.
Kim Ghattas. Black Wave: Saudi Arabia, Iran, and the Forty-Year Rivalry That Unraveled Culture, Religion, and Collective Memory in the Middle East. Henry Holt & Co., 2020. ISBN 978-1250131201.
Niki Gitinabard, Ruth Okoilu, Yiqao Xu, Sarah Heckman, Tiffany Barnes, and Collin Lynch. Student teamwork on programming projects: what can github logs show us? In Proc. EDM'2020. 2020.
Robert L. Glass. Facts and Fallacies of Software Engineering. Addison-Wesley Professional, 2002. ISBN 978-0321117427.
Kirk Glerum, Kinshuman Kinshumann, Steve Greenberg, Gabriel Aul, Vince Orgovan, Greg Nichols, David Grant, Gretchen Loihle, and Galen Hunt. Debugging in the (very) large: ten years of implementation and experience. In Proc. SOSP'09. 2009. doi:10.1145/1629575.1629586.
Nikolas Gordon and Omar Alam. The role of race and gender in teaching evaluation of computer science professors: a large scale analysis on ratemyprofessor data. In Proc. ICSE'21. 2021. doi:10.1145/3408877.3432369.
David Graeber. Bullshit Jobs: A Theory. Simon & Schuster, 2019. ISBN 978-1501143335.
Daniel Graziotin, Xiaofeng Wang, and Pekka Abrahamsson. Happy software developers solve problems better: psychological measurements in empirical software engineering. PeerJ, 3 2014. URL:, doi:10.7717/peerj.289.
Anthony G. Greenwald and Mahzarin R. Banaji. Implicit social cognition: attitudes, self-esteem, and stereotypes. Psychological Review, 1995. doi:10.1037/0033-295x.102.1.4.
Steve Gruenert and Todd Whitaker. School Culture Rewired: How to Define, Assess, and Transform It. ASCD, 2015. ISBN 978-1416619901.
Stefan Hanenberg, Sebastian Kleinschmager, Romain Robbes, Éric Tanter, and Andreas Stefik. An empirical study on the impact of static typing on software maintainability. ESE, 2013. doi:10.1007/s10664-013-9289-1.
Jo E. Hannay, Tore Dybå, Erik Arisholm, and Dag I.K. Sjøberg. The effectiveness of pair programming: a meta-analysis. Information and Software Technology, 2009. doi:10.1016/j.infsof.2009.02.001.
J.E. Hannay, E. Arisholm, H. Engvik, and D.I.K. Sjøberg. Effects of personality on pair programming. TSE, 1 2010. URL:, doi:10.1109/tse.2009.41.
Michael Hansen, Robert L. Goldstone, and Andrew Lumsdaine. What makes code hard to understand? 2013. URL:
Karen Hao. How facebook got addicted to spreading misinformation. 2021. URL:
Les Hatton. Testing the value of checklists in code inspections. IEEE Software, 2008. doi:10.1109/ms.2008.100.
Jennifer Hecht. Doubt: A History. HarperOne, 2004. ISBN 978-0060097950.
Joseph Henrich, Steven J. Heine, and Ara Norenzayan. The weirdest people in the world? Behavioral and Brain Sciences, 2010. doi:10.1017/s0140525x0999152x.
Felienne Hermans, Bas Jansen, Sohon Roy, Efthimia Aivaloglou, Alaaeddin Swidan, and David Hoepelman. Spreadsheets are code: an overview of software engineering approaches applied to spreadsheets. In Proc. SANER'16. 2016. doi:10.1109/saner.2016.86.
Kim Herzig, Sascha Just, and Andreas Zeller. It's not a bug, it's a feature: how misclassification impacts bug prediction. In Proc. ICSE'13. 2013.
M, a, r, i, e, and H, i, c, k, and s. Programmed Inequality: How Britain Discarded Women Technologists and Lost Its Edge in Computing. MIT Press, 2018. ISBN 978-0262535182.
Claudia Hilderbrand, Christopher Perdriau, Lara Letaw, Jillian Emard, Zoe Steine-Hanson, Margaret Burnett, and Anita Sarma. Engineering gender-inclusivity into software: tales from the trenches. In Proc. ICSE'20. 2020. doi:10.1145/3377811.3380371.
Michael Hilton, Timothy Tunnell, Kai Huang, Darko Marinov, and Danny Dig. Usage, costs, and benefits of continuous integration in open-source projects. In Proc. ASE'16. 2016. doi:10.1145/2970276.2970358.
Eric von Hippel. Democratizing Innovation. MIT Press, 2006. ISBN 978-0262720472.
Adam Hochschild. Bury the Chains: Prophets and Rebels in the Fight to Free an Empire's Slaves. Mariner Books, 2006. ISBN 978-0618619078.
Johannes Hofmeister, Janet Siegmund, and Daniel V. Holt. Shorter identifier names take longer to comprehend. In Proc. SANER'17. 2017. doi:10.1109/saner.2017.7884623.
Reid Holmes, Michelle Craig, Karen Reid, and Eleni Stroulia. Lessons learned managing distributed software engineering courses. In ICSE'14. 2014. doi:10.1145/2591062.2591160.
Reid Holmes, Meghan Allen, and Michelle Craig. Dimensions of experientialism for software engineering education. In Proc. ICSE-SEET'18. 2018. doi:10.1145/3183377.3183380.
Courtney Hsing and Vanessa Gennarelli. Using github in the classroom predicts student learning outcomes and classroom experiences. In Proc. SIGCSE'19. 2019. doi:10.1145/3287324.3287460.
Yang Hu, Umair Z. Ahmed, Sergey Mechtaev, Ben Leong, and Abhik Roychoudhury. Re-factoring based program repair applied to programming assignments. In Proc. ASE'19. 2019.
Hennie Huijgens, Ayushi Rastogi, Ernst Mulders, Georgios Gousios, and Arie van Deursen. Questions for data scientists in software engineering: a replication. In ESEC/FSE'20. 2020. doi:10.1145/3368089.3409717.
Andrew Hunt and David Thomas. The Pragmatic Programmer: From Journeyman to Master. Addison-Wesley Professional, 1999. ISBN 978-0201616224.
Damien Irving, Kate Hertweck, Luke Johnston, Joel Ostblom, Charlotte Wickham, and Greg Wilson. Research Software Engineering with Python: Building Software that Makes Research Possible. Chapman & Hall/CRC Press, 2019. ISBN 978-0367698348.
Daniel Jackson. Software Abstractions: Logic, Language, and Analysis. MIT Press, 2016. ISBN 978-0262528900.
Justin Ian Jackson. Marketing for Developers: Build, Launch, and Get Your First 100 Customers. Nerd North, 2017. ISBN 978-0994973009.
Sarah Jaffe. Work Won't Love You Back: How Devotion to Our Jobs Keeps Us Exploited, Exhausted, and Alone. Bold Type Books, 2021. ISBN 978-1568589398.
Jonathan Jarry. The dunning-kruger effect is probably not real. 2020. URL:
Jeff Johnson and Kate Finn. Designing User Interfaces for an Aging Population: Towards Universal Design. Morgan Kaufmann, 2017. ISBN 978-0128044674.
Jeff Johnson. Designing with the Mind in Mind: Simple Guide to Understanding User Interface Design Guidelines. Morgan Kaufmann, 2020. ISBN 978-0128182024.
John T. Jost, Laurie A. Rudman, Irene V. Blair, Dana R. Carney, Nilanjana Dasgupta, Jack Glaser, and Curtis D. Hardin. The existence of implicit bias is beyond reasonable doubt: a refutation of ideological and methodological objections and executive summary of ten studies that no manager should ignore. Research in Organizational Behavior, 2009. doi:10.1016/j.riob.2009.10.001.
Slava Kalyuga, Paul Ayres, Paul Chandler, and John Sweller. The expertise reversal effect. Educational Psychologist, 2003. doi:10.1207/s15326985ep3801_4.
Sean H. K. Kang. Spaced repetition promotes efficient and effective learning. Policy Insights from the Behavioral and Brain Sciences, 2016. doi:10.1177/2372732215624708.
Cory J. Kapser and Michael W. Godfrey. 'cloning considered harmful' considered harmful: patterns of cloning in software. ESE, 2008. doi:10.1007/s10664-008-9076-6.
Jerome Karabel. The Chosen: The Hidden History of Admission and Exclusion at Harvard, Yale, and Princeton. Mariner Books, 2006. ISBN 978-0618773558.
Deborah B. Kaufman and Richard M. Felder. Accounting for individual effort in cooperative learning teams. Engineering Education, 2000. doi:10.1002/j.2168-9830.2000.tb00507.x.
Chris F. Kemerer and Mark C. Paulk. The impact of design and code reviews on software quality: an empirical study based on psp data. TSE, 2009. doi:10.1109/tse.2009.27.
Sarah Kendzior. The View from Flyover Country: Dispatches from the Forgotten America. Flatiron Books, 2018. ISBN 978-1250189998.
Sarah Kendzior. Hiding in Plain Sight: The Invention of Donald Trump and the Erosion of America. Flatiron Books, 2020. ISBN 978-1250210715.
Joshua Kerievsky. Refactoring to Patterns. Addison-Wesley Professional, 2004. ISBN 978-0321213358.
Brian W. Kernighan and P. J. Plauger. The Elements of Programming Style. McGraw-Hill, 1979. ISBN 978-0070342071.
Brian W. Kernighan and P. J. Plauger. Software Tools in Pascal. Addison-Wesley Professional, 1981. ISBN 978-0201103427.
Brian W. Kernighan and Rob Pike. The Unix Programming Environment. Prentice-Hall, 1983. ISBN 978-0139376818.
Brian W. Kernighan and Rob Pike. The Practice of Programming. Addison-Wesley, 1999. ISBN 978-8177582482.
Foutse Khomh, Tejinder Dhaliwal, Ying Zou, and Bram Adams. Do faster releases improve software quality? an empirical case study of mozilla firefox. In Proc. MSR'12. IEEE, 6 2012. URL:, doi:10.1109/msr.2012.6224279.
Paul A. Kirschner, John Sweller, and Richard E. Clark. Why minimal guidance during instruction does not work: an analysis of the failure of constructivist, discovery, problem-based, experiential, and inquiry-based teaching. Educational Psychologist, 2006. doi:10.1207/s15326985ep4102_1.
Paul A. Kirschner, John Sweller, Femke Kirschner, and Jimmy Zambrano R. From cognitive load theory to collaborative cognitive load theory. International Journal of Computer-Supported Collaborative Learning, 2018. doi:10.1007/s11412-018-9277-y.
Jonathan L. Krein, Lutz Prechelt, Natalia Juristo, Aziz Nanthaamornphong, Jeffrey C. Carver, Sira Vegas, Charles D. Knutson, Kevin D. Seppi, and Dennis L. Eggett. A multi-site joint replication of a design patterns experiment using moderator variables to generalize across contexts. TSE, 2016. doi:10.1109/tse.2015.2488625.
Ryan Krueger, Yu Huang, Xinyu Liu, Tyler Santander, Westley Weimer, and Kevin Leach. Neurological divide: an fmri study of prose and code writing. In Proc. ICSE'20. 2020. doi:10.1145/3377811.3380348.
Justin Kruger and David Dunning. Unskilled and unaware of it: how difficulties in recognizing incompetence lead to inflated self-assessment. Personality and Social Psychology, 1999. doi:10.1037/0022-3514.77.6.1121.
Jean Lave and Etienne Wenger. Situated Learning: Legitimate Peripheral Participation. Cambridge University Press, 1991. ISBN 978-0521423748.
Stan Lee. The amazing spider-man. Amazing Fantasy, 1962.
Claire Le Goues, Michael Pradel, and Abhik Roychoudhury. Automated program repair. CACM, 2019. doi:10.1145/3318162.
Roxanne Leitão. Technology-facilitated intimate partner abuse: a qualitative analysis of data from online domestic abuse forums. Human–Computer Interaction, 2019. doi:10.1080/07370024.2019.1685883.
Sarah Lin, Ibraheem Ali, and Greg Wilson. Ten quick tips for making things findable. PLoS Computational Biology, 2020. doi:10.1371/journal.pcbi.1008469.
Van Lindberg. Intellectual Property and Open Source: A Practical Guide to Protecting Code. O'Reilly, 2008. ISBN 978-0596517960.
Andro Linklater. Owning the Earth: The Transforming History Of Land Ownership. Bloomsbury USA, 2013. ISBN 978-1620402894.
Dennis Littky. The Big Picture: Education Is Everyone's Business. Association for Supervision & Curriculum Development, 2004. ISBN 978-0871209719.
Mary Lynn Manns and Linda Rising. Fearless Change: Patterns for Introducing New Ideas. Addison-Wesley, 2015. ISBN 978-0201741575.
Jane Margolis and Allan Fisher. Unlocking the Clubhouse: Women in Computing. MIT Press, 2002. ISBN 978-0262632690.
Gloria Mark, Daniela Gudith, and Ulrich Klocke. The cost of interrupted work: more speed and stress. In Proc. CHI'08. 2008. doi:10.1145/1357054.1357072.
Zainab Masood, Rashina Hoda, and Kelly Blincoe. Adapting agile practices in university contexts. Journal of Systems and Software, 2018. doi:10.1016/j.jss.2018.07.011.
Anna May, Johannes Wachs, and Anikó Hannák. Gender differences in participation and reward on stack overflow. ESE, 2019. doi:10.1007/s10664-019-09685-x.
Richard E. Mayer. Multimedia Learning. Cambridge University Press, 2009. ISBN 978-0521735353.
Malcolm McDonald. Web Security for Developers: Real Threats, Practical Defense. No Starch Press, 2020. ISBN 978-1593279943.
Shane McIntosh, Bram Adams, Thanh H.D. Nguyen, Yasutaka Kamei, and Ahmed E. Hassan. An empirical study of build maintenance effort. In Proc. ICSE'11. ACM Press, 2011. URL:, doi:10.1145/1985793.1985813.
Tressie McMillan Cottom. Lower Ed: The Troubling Rise of For-Profit Colleges in the New Economy. The New Press, 2018. ISBN 978-1620974384.
Andrew Meneely, Pete Rotella, and Laurie Williams. Does adding manpower also affect quality? In Proc. FSE'11. ACM Press, 2011. URL:, doi:10.1145/2025113.2025128.
Andrew Meneely, Alberto C. Rodriguez Tejeda, Brian Spates, Shannon Trudeau, Danielle Neuberger, Katherine Whitlock, Christopher Ketant, and Kayla Davis. An empirical investigation of socio-technical code review metrics and security vulnerabilities. In Proc. SSE'14. 2014. doi:10.1145/2661685.2661687.
Janet Metcalfe. Learning from errors. Annual Review of Psychology, 2016. doi:10.1146/annurev-psych-010416-044022.
Tom Meyvis and Heeyoung Yoon. Adding is favoured over subtracting in problem solving. Nature, 2021. doi:10.1038/d41586-021-00592-0.
Larry K. Michaelson, Arletta Bauman Knight, and L. Dee Fink, editors. Team-Based Learning: A Transformative Use of Small Groups in College Teaching. Stylus Publishing, 2004. ISBN 978-1579220860.
Matto Mildenberger. The tragedy of 'the tragedy of the commons'. 2019. URL:
George A. Miller. The magical number seven, plus or minus two: some limits on our capacity for processing information. Psychological Review", 1956. doi:10.1037/h0043158.
Barton P. Miller, Louis Fredriksen, and Bryan So. An empirical study of the reliability of unix utilities. CACM, 1990. doi:10.1145/96267.96279.
Barton Miller, Mengxiao Zhang, and Elisa Heymann. The relevance of classic fuzz testing: have we solved this one? TSE, 2020. doi:10.1109/tse.2020.3047766.
Anne Minahan. Martha's rules. Affilia, 6 1986. URL:, doi:10.1177/088610998600100206.
Pankaj Mishra. From the Ruins of Empire: The Revolt Against the West and the Remaking of Asia. Picador, 2013. ISBN 978-1250037718.
Audris Mockus. Organizational volatility and its effects on software defects. In Proc. FSE'10. 2010. doi:10.1145/1882291.1882311.
Martin Monperrus. Automatic software repair. ACM Computing Surveys, 2018. doi:10.1145/3105906.
Gretchen A. Mosher. Formation and development of effective student teams to facilitate team-based learning. In Proc. ASEE North Midwest Section Conference. 2013.
Samuel Moyn. The Last Utopia: Human Rights in History. Belknap Press, 2010. ISBN 978-0674048720.
Siddhartha Mukherjee. The Emperor of All Maladies: A Biography of Cancer. Scribner, 2011. ISBN 978-1439170915.
Suman Nakshatri, Maithri Hegde, and Sahithi Thandra. Analysis of exception handling patterns in java projects. In Proc. MSR'16. ACM Press, 2016. URL:, doi:10.1145/2901739.2903499.
Safiya Umoja Noble. Algorithms of Oppression: How Search Engines Reinforce Racism. NYU Press, 2018. ISBN 978-1479837243.
Robert Nystrom. Game Programming Patterns. Genever Benning, 2014. ISBN 978-0990582908.
Barbara Oakley, Richard M. Felder, Rebecca Brent, and Imad Elhajj. Turning student groups into effective teams. Journal of Student Centered Learning, 2004.
Russ Olsen. Design Patterns in Ruby. Addison-Wesley Professional, 2007. ISBN 978-0321490452.
Ijeoma Oluo. So You Want to Talk About Race. Seal Press, 2019. ISBN 978-1580058827.
C, a, t, h, y, and O, ', N, e, i, and l. Weapons of Math Destruction: How Big Data Increases Inequality and Threatens Democracy. Crown, 2017. ISBN 978-0553418835.
Elinor Ostrom. Governing the Commons: The Evolution of Institutions for Collective Action. Cambridge University Press, 2015. ISBN 978-1107569782.
Kai Pan, Sunghun Kim, and E. James Whitehead. Toward an understanding of bug fix patterns. ESE, 2008. doi:10.1007/s10664-008-9077-5.
Jihun Park, Miryung Kim, Baishakhi Ray, and Doo-Hwan Bae. An empirical study of supplementary bug fixes. In Proc. MSR'12. 2012. doi:10.1109/msr.2012.6224298.
Chris Parnin and Spencer Rugaber. Resumption strategies for interrupted programming tasks. Software Quality Journal, 2010. doi:10.1007/s11219-010-9104-9.
Elizabeth Patitsas, Jesse Berlin, Michelle Craig, and Steve Easterbrook. Evidence that computer science grades are not bimodal. In Proc. ICER'16. 2016. doi:10.1145/2960310.2960312.
Norman Peitek, Sven Apel, Chris Parning, André Brechmann, and Janet Siegmund. Program comprehension and code complexity metrics: an fmri study. In Proc. ICSE'21. 2021.
Santiago Perez De Rosso and Daniel Jackson. What's wrong with git? In Proc. Onward!'13. 2013. doi:10.1145/2509578.2509584.
Santiago Perez De Rosso and Daniel Jackson. Purposes, concepts, misfits, and a redesign of git. In Proc. OOPSLA'16. 2016. doi:10.1145/2983990.2984018.
Melissa Perri. Escaping the Build Trap: How Effective Product Management Creates Real Value. O'Reilly Media, 2018. ISBN 978-1491973790.
Marian Petre. Uml in practice. In Proc. ICSE'13. 2013. doi:10.1109/icse.2013.6606618.
Marian Petre and André van der Hoek. Software Design Decoded: 66 Ways Experts Think. MIT Press, 2016. ISBN 978-0262035187.
Leigh Phillips and Michal Rozworski. The People's Republic of Walmart. Verso, 2019. ISBN 978-1786635167.
Daryl Posnett, Abram Hindle, and Prem Devanbu. Got issues? do new features and code improvements affect defects? In Proc. WCRE'11. IEEE, 10 2011. URL:, doi:10.1109/wcre.2011.33.
Martiqua L Post, Anthony Barrett, Marlyse Williams, and Lauren Scharff. Impact of team formation method on student performance, attitudes, and behaviors. JSTL, 2020. doi:10.14434/josotl.v20i1.24128.
Lutz Prechelt. The mythical 10x programmer. In Caitlin Sadowski and Thomas Zimmermann, editors, Rethinking Productivity in Software Engineering. 2019.
Diandra Prioleau, Brianna Richardson, Emma Drobina, Rua Williams, Joshua Martin, and Juan E. Gilbert. How students in computing-related majors distinguish social implications of technology. In Proc. ICSE'21. 2021. doi:10.1145/3408877.3432360.
David Pritchard. Frequency distribution of error messages. In Proc. PLATEAU'15. ACM Press, 2015. URL:, doi:10.1145/2846680.2846681.
Megha Rajagopalan, Lam Thuy Vo, and Aung Naing Soe. How facebook failed the rohingya in myanmar. 2018. URL:
Yolanda A. Rankin, Jakita O. Thomas, and Sheena Erete. Real talk: saturated sites of violence in cs education. In Proc. ICSE'21. 2021. doi:10.1145/3408877.3432432.
Katherine A. Rawson, Ruthann C. Thomas, and Larry L. Jacoby. The power of examples: illustrative examples enhance conceptual learning of declarative concepts. Educational Psychology Review, 2014. doi:10.1007/s10648-014-9273-3.
Eric S. Raymond. The Cathedral and the Bazaar. O'Reilly Media, 2001. ISBN 978-0596001087.
John Reekie and Rohan McAdam. A Software Architecture Primer. Angophora Press, 2006. ISBN 978-0646458410.
John Restakis. Humanizing the Economy: Co-operatives in the Age of Capital. New Society Publishers, 2010. ISBN 978-0865716513.
Evan Robinson. Why crunch mode doesn't work: 6 lessons. 2005. URL:
Nathan J. Robinson. Surely we can do better than elon musk. 2021. URL:
Doug Rohrer, Robert F. Dedrick, and Sandra Stershic. Interleaved practice improves mathematics learning. Journal of Educational Psychology, 2015. doi:10.1037/edu0000001.
Winston Royce. Managing the development of large software systems. In Proc. IEEE WESCON. 1970.
Caitlin Sadowski and Thomas Zimmermann, editors. Rethinking Productivity in Software Engineering. Apress, 2019. ISBN 978-1484242209.
Caitlin Sadowski, Margaret-Anne Storey, and Robert Feldt. A software development productivity framework. In Caitlin Sadowski and Thomas Zimmermann, editors, Rethinking Productivity in Software Engineering. 2019.
Jorma Sajaniemi, Mordechai Ben-Ari, Pauli Byckling, Petri Gerdt, and Yevgeniya Kulikova. Roles of variables in three programming paradigms. Computer Science Education, 2006. doi:10.1080/08993400600874584.
John Scalzi. Straight white male: the lowest difficulty setting there is. 2012. URL:
David A. Scanlan. Structured flowcharts outperform pseudocode: an experimental comparison. IEEE Software, 1989. doi:10.1109/52.35587.
Andrea Schankin, Annika Berger, Daniel V. Holt, Johannes C. Hofmeister, Till Riedel, and Michael Beigl. Descriptive compound identifier names improve source code comprehension. In ICPC'18. 2018. doi:10.1145/3196321.3196332.
Bruce Schneier. Click Here to Kill Everybody: Security and Survival in a Hyper-connected World. WW Norton, 2019. ISBN 978-0393357448.
Bruce Schneier. National security risks of late-stage capitalism. 2021. URL:
Donald A. Schon. The Reflective Practitioner: How Professionals Think in Action. Basic Books, 1984. ISBN 978-0465068784.
James C. Scott. Seeing Like a State: How Certain Schemes to Improve the Human Condition Have Failed. Yale University Press, 1999. ISBN 978-0300078152.
Todd Sedano, Paul Ralph, and Cécile Péraire. Software development waste. In Proc. ICSE'17. 2017. doi:10.1109/ICSE.2017.20.
Justin Seitz and Tim Arnold. Black Hat Python: Python Programming for Hackers and Pentesters. No Starch Press, 2021. ISBN 978-1718501126.
Ax Sharma. PHP's git server hacked to add backdoors to PHP source code. 2021. URL:
Helen Sharp, Yvonne Dittrich, and Cleidson R. B. de Souza. The role of ethnographic studies in empirical software engineering. TSE, 2016. doi:10.1109/tse.2016.2519887.
Dan Sholler, Igor Steinmacher, Denae Ford, Mara Averick, Mike Hoye, and Greg Wilson. Ten simple rules for helping newcomers become contributors to open projects. PLoS Computational Biology, 2019. doi:10.1371/journal.pcbi.1007296.
Simon Singh and Edzard Ernst. Trick or Treatment: The Undeniable Facts about Alternative Medicine. W. W. Norton, 2009. ISBN 978-0393337785.
Danielle Smalls and Greg Wilson. Ten quick tips for staying safe online. PLoS Computational Biology, 2021. doi:10.1371/journal.pcbi.1008563.
Edward Snowden. Permanent Record. Metropolitan Books, 2019. ISBN 978-1250237231.
Rebecca Solnit. A Paradise Built in Hell: The Extraordinary Communities That Arise in Disaster. Penguin Books, 2010. ISBN 978-0143118077.
Diomidis Spinellis. Code Reading: The Open Source Perspective. Addison-Wesley Professional, 2003. ISBN 978-0201799408.
Diomidis Spinellis. The tools we use. IEEE Software, 2007.
Andreas Stefik and Susanna Siebert. An empirical investigation into programming language syntax. ACM Trans. Computing Education, 11 2013. URL:, doi:10.1145/2534973.
Andreas Stefik, Patrick Daleiden, Diana Franklin, Stefan Hanenberg, Antti-Juhani Kaijanaho, Walter Tichy, and Brett A. Becker. Programming languages and learning. 2017. URL:
Martijn Stegeman, Erik Barendsen, and Sjaak Smetsers. Towards an empirically validated model for assessment of code quality. In Proc. Koli'14. 2014. doi:10.1145/2674683.2674702.
Martijn Stegeman, Erik Barendsen, and Sjaak Smetsers. Designing a rubric for feedback on code quality in programming courses. In Proc. Koli'16. 2016. doi:10.1145/2999541.2999555.
Igor Steinmacher, Igor Scaliante Wiese, Tayana Conte, Marco Aurélio Gerosa, and David Redmiles. The hard life of open source software project newcomers. In Proc. CHASE'14. 2014. doi:10.1145/2593702.2593704.
Jeffrey Stylos and Steven Clarke. Usability implications of requiring parameters in objects' constructors. In Proc. ICSE'07. 2007. doi:10.1109/icse.2007.92.
Morgan Taschuk and Greg Wilson. Ten simple rules for making research software more robust. PLoS Computational Biology, 4 2017. doi:10.1371/journal.pcbi.1005412.
Matti Tedre and Erkki Sutinen. Three traditions of computing: what educators should know. CSE, 2008. doi:10.1080/08993400802332332.
David Thomas and Andrew Hunt. The Pragmatic Programmer: Your Journey to Mastery. Addison-Wesley Professional, 2019. ISBN 978-0135957059.
Clive Thompson. When workers control the code. 2019. URL:
Walter Tichy. The evidence for design patterns. In Andy Oram and Greg Wilson, editors, Making Software. 2010.
Nitasha Tiku. Google's approach to historically black schools helps explain why there are few black engineers in big tech. 2021. URL:
Alexey Tregubov, Barry Boehm, Natalia Rodchenko, and Jo Ann Lane. Impact of task switching and work interruptions on software development processes. In Proc. ICSSP'17. 2017. doi:10.1145/3084100.3084116.
Christoph Treude and Margaret-Anne Storey. Effective communication of software development knowledge through community portals. In FSE'11. 2011. doi:10.1145/2025113.2025129.
Chelsea Troy. Why do remote meetings suck so much? 2018. URL:
Zeynep Tufekci. Twitter and Tear Gas: The Power and Fragility of Networked Protest. Yale University Press, 2018. ISBN 978-0300234176.
Tyler Vigen. Spurious Correlations. Hachette Books, 2015. ISBN 978-0316339438.
Sara Wachter-Boettcher. Technically Wrong: Why Digital Products Are Designed to Fail You. WW Norton, 2017. ISBN 978-0393634631.
Michael Washburn, Pavithra Sathiyanarayanan, Meiyappan Nagappan, Thomas Zimmermann, and Christian Bird. What went right and what went wrong: an analysis of 155 postmortems from game development. In Proc. ICSE'16. 2016. doi:10.1145/2889160.2889253.
Alicia Nicki Washington. When twice as good isn't enough: the case for cultural competence in computing. In Proc. SIGCSE'20. 2020. doi:10.1145/3328778.3366792.
Hillel Wayne. Practical TLA+: Planning Driven Development. Apress, 2018. ISBN 978-1484238288.
Peter Wayner. Translucent Databases. CreateSpace, 2009. ISBN 978-1441421340.
Yana Weinstein, Megan Sumeracki, and Oliver Caviglioli. Understanding How We Learn: A Visual Guide. Routledge, 2018. ISBN 978-1138561724.
Etienne Wenger. Communities of Practice: Learning, Meaning, and Identity. Cambridge University Press, 1999. ISBN 978-0521663632.
Dorota Węziak-Białowolska, Zhao Dong, and Eileen McNeely. Turning the mirror on the architects: a study of the open-plan office and work behaviors at an architectural company. Frontiers in Psychology, 2018. doi:10.3389/fpsyg.2018.02178.
Richard Wilkinson and Kate Pickett. The Spirit Level: Why Greater Equality Makes Societies Stronger. Bloomsbury Press, 2011. ISBN 978-1608193417.
Laurie Williams and Richard L. Upchurch. In support of student pair-programming. In Proc. SIGCSE'01. 2001. doi:10.1145/364447.364614.
Greg Wilson. Teaching Tech Together. Taylor & Francis, 2019. ISBN 978-0367353285.
Raymond J. Wlodkowski and Margery B. Ginsberg. Enhancing Adult Motivation to Learn: A Comprehensive Guide for Teaching All Adults. Jossey-Bass, 2017. ISBN 978-1119077992.
Tianyin Xu, Long Jin, Xuepeng Fan, Yuanyuan Zhou, Shankar Pasupathy, and Rukma Talwadker. Hey, you have given me too many knobs!: understanding and dealing with over-designed configuration in system software. In Proc. FSE'15. ACM Press, 2015. URL:, doi:10.1145/2786805.2786852.
Zuoning Yin, Ding Yuan, Yuanyuan Zhou, Shankar Pasupathy, and Lakshmi Bairavasundaram. How do fixes become bugs? In Proc. SIGSOFT/FSE'11. 2011. doi:10.1145/2025113.2025121.
Ding Yuan, Yu Luo, Xin Zhuang, Guilherme Renna Rodrigues, Xu Zhao, Yongle Zhang, Pranay Jain, and Michael Stumm. Simple testing can prevent most critical failures: an analysis of production failures in distributed data-intensive systems. login Usenix Magazine, 2015. URL:
Fiorella Zampetti, Carmine Vassallo, Sebastiano Panichella, Gerardo Canfora, Harald Gall, and Massimiliano Di Penta. An empirical characterization of bad practices in continuous integration. ESE, 2020. doi:10.1007/s10664-019-09785-8.
Andreas Zeller. Why Programs Fail: A Guide to Systematic Debugging. Morgan Kaufmann, 2009. ISBN 978-0080923000.
Andreas Zeller, Thomas Zimmermann, and Christian Bird. Failure is a four-letter word. In Proc. PROMISE'11. ACM Press, 2011. URL:, doi:10.1145/2020390.2020395.
Andreas Zeller, Rahul Gopinath, Marcel Böhme, Gordon Fraser, and Christian Holler. The fuzzing book. 2019. URL:
Andreas Zeller. The debugging book. 2021. URL:
Letian Zhang. An institutional approach to gender diversity and firm performance. Organization Science, 2020. doi:10.1287/orsc.2019.1297.