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. Packt, 2020, 978-1839214110.
Conery2021
Rob Conery: The Imposter's Handbook: A CS Primer for Self-Taught Developers. Independently published, 2021, 978-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, 2016, 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. Pearson, 2020, 978-0136820154.
Johnson2019
John Johnson, Sergio Lubo, Nishitha Yedla, Jairo Aponte, and Bonita Sharif: "An Empirical Study Assessing Source Code Readability in Comprehension". Proc. ICSME'19, 2019, 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.
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. https://addyosmani.com/resources/essentialjsdesignpatterns/book/, 2017.
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. Manning, 2020, 978-1617297045.