Bibliography

Binkley2012 Dave Binkley, Marcia Davis, Dawn Lawrie, Jonathan I. Maletic, Christopher Morrell, and Bonita Sharif: "The Impact of Identifier Style on Effort and Comprehension". ESE, 18(2), 2012, 10.1007/s10664-012-9201-4.

Brand1995 Stewart Brand: How Buildings Learn: What Happens After They're Built. Penguin USA, 1995, 978-0140139969.

Brown2011 Amy Brown and Greg Wilson (eds.): The Architecture of Open Source Applications: Elegance, Evolution, and a Few Fearless Hacks. Lulu, 2011, 978-1257638017.

Brown2012 Amy Brown and Greg Wilson (eds.): The Architecture of Open Source Applications: Structure, Scale, and a Few More Fearless Hacks. Lulu, 2012, 978-0201103427.

Brown2016 Amy Brown and Michael DiBernardo (eds.): 500 Lines or Less: Experienced Programmers Solve Interesting Problems. Lulu, 2016, 978-1329871274.

Casciaro2020 Mario Casciaro and Luciano Mammino: Node.js Design Patterns (3rd edition). Packt, 2020, 978-1839214110.

Conery2021 Rob Conery: The Imposter's Handbook: A CS Primer for Self-Taught Developers. Independently published, 2021, 979-8708185266.

Davis2018 Ashley Davis: Data Wrangling with JavaScript. Manning, 2018, 978-1617294846.

Feathers2004 Michael C. Feathers: Working Effectively with Legacy Code. Prentice-Hall, 2004, 978-0131177055.

Fucci2016 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". Proc. ESEM'16, 10.1145/2961111.2962592.

Fucci2017 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, 43(7), 2017, 10.1109/tse.2016.2616877.

Gregg2020 Brendan Gregg: Systems Performance: Enterprise and the Cloud (2nd edition). Pearson, 2020, 978-0136820154.

Jackson2016 Daniel Jackson: Software Abstractions: Logic, Language, and Analysis (revised edition). MIT Press, 2016, 978-0262528900.

Johnson2019 John Johnson, Sergio Lubo, Nishitha Yedla, Jairo Aponte, and Bonita Sharif: "An Empirical Study Assessing Source Code Readability in Comprehension". Proc. ICSME'19, 10.1109/ICSME.2019.00085.

Kernighan1979 Brian W. Kernighan and P. J. Plauger: The Elements of Programming Style. McGraw-Hill, 1979, 978-0070342071.

Kernighan1981 Brian W. Kernighan and P. J. Plauger: Software Tools in Pascal. Addison-Wesley Professional, 1981, 978-0201103427.

Kernighan1983 Brian W. Kernighan and Rob Pike: The Unix Programming Environment. Prentice-Hall, 1983, 978-0139376818.

Kernighan1988 Brian W. Kernighan and Dennis M. Ritchie: The C Programming Language. Prentice-Hall, 1988, 978-0131103627.

Kohavi2020 Ron Kohavi, Diane Tang, and Ya Xu: Trustworthy Online Controlled Experiments: A Practical Guide to A/B Testing. Cambridge University Press, 2020, 978-1108724265.

Meszaros2007 Gerard Meszaros: xUnit Test Patterns: Refactoring Test Code. Addison-Wesley, 2007, 978-0131495050.

Minahan1986 Anne Minahan: "Martha's Rules". Affilia, 1(2), 1986, 10.1177/088610998600100206.

Oram2007 Andy Oram and Greg Wilson (eds.): Beautiful Code: Leading Programmers Explain How They Think. O'Reilly, 2007, 978-0596510046.

Osmani2017 Addy Osmani: "Learning JavaScript Design Patterns".

Patterson2017 David A. Patterson and John L. Hennessy: Computer Organization and Design: The Hardware/Software Interface. Morgan Kaufmann, 2017, 978-0128122754.

Petre2016 Marian Petre and André van der Hoek: Software Design Decoded: 66 Ways Experts Think. MIT Press, 2016, 978-0262035187.

Petzold2008 Charles Petzold: The Annotated Turing. Wiley, 2008, 978-0470229057.

Schon1984 Donald A. Schon: The Reflective Practitioner: How Professionals Think in Action. Basic Books, 1984, 978-0465068784.

Smith2011 Peter Smith: Software Build Systems: Principles and Experience. Addison-Wesley Professional, 2011, 978-0134185965.

Taschuk2017 Morgan Taschuk and Greg Wilson: "Ten Simple Rules for Making Research Software More Robust". PLoS Comp Bio, 13(4), 2017, 10.1371/journal.pcbi.1005412.

Tudose2020 Cătălin Tudose: JUnit in Action (3rd edition). Manning, 2020, 978-1617297045.

Wayne2018 Hillel Wayne: Practical TLA+: Planning Driven Development. Apress, 2018, 978-1484238288.

Zeller2009 Andreas Zeller: Why Programs Fail: A Guide to Systematic Debugging (2nd edition). Morgan Kaufmann, 2009, 978-0080923000.