N References

Almeida, Daniel A., Gail C. Murphy, Greg Wilson, and Mike Hoye. 2017. “Do Software Developers Understand Open Source Licenses?” In Proceedings of the 25th International Conference on Program Comprehension, 1–11. IEEE Press. https://doi.org/10.1109/ICPC.2017.7.

Aurora, Valerie, and Mary Gardiner. 2019. How to Respond to Code of Conduct Reports. Version 1.1. Frame Shift Consulting LLC.

Aurora, Valerie, Mary Gardiner, and Annalee Flower Horne. 2018. How to Respond to Code of Conduct Reports. Frame Shift Consulting.

Bacchelli, Alberto, and Christian Bird. 2013. “Expectations, Outcomes, and Challenges of Modern Code Review.” In Proc. International Conference on Software Engineering. http://research.microsoft.com/apps/pubs/default.aspx?id=180283.

Becker, Brett A., Graham Glanville, Ricardo Iwashima, Claire McDonnell, Kyle Goslin, and Catherine Mooney. 2016. “Effective Compiler Error Message Enhancement for Novice Programming Students.” Computer Science Education 26 (2-3): 148–75. https://doi.org/10.1080/08993408.2016.1225464.

Beniamini, Gal, Sarah Gingichashvili, Alon Klein Orbach, and Dror G. Feitelson. 2017. “Meaningful Identifier Names: The Case of Single-Letter Variables.” In Proc. 2017 International Conference on Program Comprehension (ICPC’17). Institute of Electrical; Electronics Engineers (IEEE). https://doi.org/10.1109/icpc.2017.18.

Bernhardt, Gary. 2018. “A Case Study in Not Being a Jerk in Open Source.” https://www.destroyallsoftware.com/blog/2018/a-case-study-in-not-being-a-jerk-in-open-source.

Bettenburg, Nicolas, Sascha Just, Adrian Schröter, Cathrin Weiss, Rahul Premraj, and Thomas Zimmermann. 2008. “What Makes a Good Bug Report?” In Proc. 16th ACM SIGSOFT International Symposium on Foundations of Software Engineering - (SIGSOFT’08/FSE’16). ACM Press. https://doi.org/10.1145/1453101.1453146.

Binkley, Dave, Marcia Davis, Dawn Lawrie, Jonathan I. Maletic, Christopher Morrell, and Bonita Sharif. 2012. “The Impact of Identifier Style on Effort and Comprehension.” Empirical Software Engineering 18 (2): 219–76. https://doi.org/10.1007/s10664-012-9201-4.

Bollier, David. 2014. Think Like a Commoner: A Short Introduction to the Life of the Commons. New Society Publishers.

Borwein, Jonathan, and David H. Bailey. 2013. “The Reinhart-Rogoff Error—or, How Not to Excel at Economics.” https://theconversation.com/the-reinhart-rogoff-error-or-how-not-to-excel-at-economics-13646.

Braiek, Houssem Ben, and Foutse Khomh. 2018. “On Testing Machine Learning Programs.” https://arxiv.org/abs/1812.02257.

Brand, Stewart. 1995. How Buildings Learn: What Happens After They’re Built. Penguin USA.

Brock, Jon. n.d. “"A Love Letter to Your Future Self": What Scientists Need to Know About Fair Data.” https://www.natureindex.com/news-blog/what-scientists-need-to-know-about-fair-data.

Brookfield, Stephen D., and Stephen Preskill. 2016. The Discussion Book: 50 Great Ways to Get People Talking. Jossey-Bass.

Brown, Neil C. C., and Greg Wilson. 2018. “Ten Quick Tips for Teaching Programming.” PLOS Computational Biology 14 (4). https://doi.org/10.1371/journal.pcbi.1006023.

Brown, Titus. 2017. “How I Learned to Stop Worrying and Love the Coming Archivability Crisis in Scientific Software.” http://ivory.idyll.org/blog/tag/futurepaper.html.

Buckheit, Jonathan B., and David L. Donoho. 1995. “WaveLab and Reproducible Research.” In Wavelets and Statistics, 55–81. Springer New York. https://doi.org/10.1007/978-1-4612-2544-7_5.

Carroll, John. 2014. “Creating Minimalist Instruction.” International Journal of Designs for Learning 5 (2). https://doi.org/10.14434/ijdl.v5i2.12887.

Cohen, Jason. 2010. “Modern Code Review.” In Making Software, edited by Andy Oram and Greg Wilson. O’Reilly.

Devenyi, Gabriel A., Rémi Emonet, Rayna M. Harris, Kate L. Hertweck, Damien Irving, Ian Milligan, and Greg Wilson. 2018. “Ten Simple Rules for Collaborative Lesson Development.” PLOS Computational Biology 14 (3). https://doi.org/10.1371/journal.pcbi.1005963.

Dobzhansky, Theodosius. 1973. “Nothing in Biology Makes Sense Except in the Light of Evolution.” The American Biology Teacher, March.

Fagan, Michael E. 1976. “Design and Code Inspections to Reduce Errors in Program Development.” IBM Systems Journal 15 (3): 182–211. https://doi.org/10.1147/sj.153.0182.

———. 1986. “Advances in Software Inspections.” IEEE Transactions on Software Engineering 12 (7): 744–51. https://doi.org/10.1109/TSE.1986.6312976.

Fogel, Karl. 2005. Producing Open Source Software: How to Run a Successful Free Software Project. O’Reilly Media.

Freeman, Jo. 1972. “The Tyranny of Structurelessness.” The Second Wave 2 (1).

Fucci, Davide, Hakan Erdogmus, Burak Turhan, Markku Oivo, and Natalia Juristo. 2017. “A Dissection of the Test-Driven Development Process: Does It Really Matter to Test-First or to Test-Last?” IEEE Transactions on Software Engineering 43 (7). https://doi.org/10.1109/tse.2016.2616877.

Fucci, Davide, Giuseppe Scanniello, Simone Romano, Martin Shepperd, Boyce Sigweni, Fernando Uyaguari, Burak Turhan, Natalia Juristo, and Markku Oivo. 2016. “An External Replication on the Effects of Test-Driven Development Using a Multi-Site Blind Analysis Approach.” In Proc. 10th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM’16). ACM Press. https://doi.org/10.1145/2961111.2962592.

Gil, Yolanda, Cédric H. David, Ibrahim Demir, Bakinam T. Essawy, Robinson W. Fulweiler, Jonathan L. Goodall, Leif Karlstrom, et al. 2016. “Toward the Geoscience Paper of the Future: Best practices for documenting and sharing research from data to software to provenance.” Earth and Space Science 3: 388–415. https://doi.org/10.1002/2015EA000136.

Goldberg, David. 1991. “What Every Computer Scientist Should Know About Floating-Point Arithmetic.” ACM Computing Surveys 23 (1). https://doi.org/10.1145/103162.103163.

Goodman, Alyssa, Alberto Pepe, Alexander W. Blocker, Christine L. Borgman, Kyle Cranmer, Merce Crosas, Rosanne Di Stefano, et al. 2014. “Ten Simple Rules for the Care and Feeding of Scientific Data.” PLoS Computational Biology 10 (4): e1003542. https://doi.org/10.1371/journal.pcbi.1003542.

Goyvaerts, Jan, and Steven Levithan. 2012. Regular Expressions Cookbook. 2nd ed. O’Reilly Media.

Gruenert, Steve, and Todd Whitaker. 2015. School Culture Rewired: How to Define, Assess, and Transform It. ASCD.

Haddock, Steven, and Casey Dunn. 2010. Practical Computing for Biologists. Sinauer Associates.

Hart, Edmund M., Pauline Barmby, David LeBauer, François Michonneau, Sarah Mount, Patrick Mulrooney, Timothée Poisot, Kara H. Woo, Naupaka B. Zimmerman, and Jeffrey W. Hollister. 2016. “Ten Simple Rules for Digital Data Storage.” PLOS Computational Biology 12 (10): e1005097. https://doi.org/10.1371/journal.pcbi.1005097.

Janssens, Jeroen. 2014. Data Science at the Command Line. O’Reilly Media.

Kernighan, Brian W., and Rob Pike. 1999. The Practice of Programming. Addison-Wesley.

Lee, Stan. 1962. Amazing Fantasy #15. Marvel.

Leonhardt, Matthias AND Serbe, Aljoscha AND Meier. 2017. “Neural Mechanisms Underlying Sensitivity to Reverse-Phi Motion in the Fly.” PLOS ONE 12 (12): 1–25. https://doi.org/10.1371/journal.pone.0189019.

Lindberg, Van. 2008. Intellectual Property and Open Source: A Practical Guide to Protecting Code. O’Reilly Media.

Majumder, Suvodeep, Joymallya Chakraborty, Amritanshu Agrawal, and Tim Menzies. 2019. “Why Software Projects Need Heroes (Lessons Learned from 1000+ Projects).” https://arxiv.org/abs/1904.09954.

Mak, Ronald. 2006. The Martian Principles. Wiley.

Meili, Stephen. 2016. “Do Human Rights Treaties Help Asylum-Seekers: Findings from the U.k.” ICPSR - Interuniversity Consortium for Political; Social Research. https://doi.org/10.3886/E17507V2.

Michener, William K. 2015. “Ten Simple Rules for Creating a Good Data Management Plan.” PLOS Computational Biology 11 (10): e1004525. https://doi.org/10.1371/journal.pcbi.1004525.

Miller, George A. 1956. “The Magical Number Seven, Plus or Minus Two: Some Limits on Our Capacity for Processing Information.” Psychological Review 63 (2): 81–97. https://doi.org/10.1037/h0043158.

Miller, Greg. 2006. “A scientist’s nightmare: Software problem leads to five retractions.” Science 314 (5807): 1856–7. https://doi.org/10.1126/science.314.5807.1856.

Minahan, Anne. 1986. “Martha’s Rules.” Affilia 1 (2): 53–56. https://doi.org/10.1177/088610998600100206.

Moreno-Sánchez, Isabel, Francesc Font-Clos, and Álvaro Corral. 2016. “Large-scale analysis of Zipf’s Law in english texts.” PLoS ONE 11 (1): e0147073. https://doi.org/10.1371/journal.pone.0147073.

Morin, Andrew, Jennifer Urban, and Piotr Sliz. 2012. “A Quick Guide to Software Licensing for the Scientist-Programmer.” PLoS Computational Biology 8 (7). https://doi.org/10.1371/journal.pcbi.1002598.

Noble, William Stafford. 2009. “A Quick Guide to Organizing Computational Biology Projects.” PLoS Computational Biology 5 (7). https://doi.org/10.1371/journal.pcbi.1000424.

Nüst, Daniel, Vanessa Sochat, Ben Marwick, Stephen Eglen, Tim Head, Tony Hirst, and Benjamin Evans. 2020. “Ten Simple Rules for Writing Dockerfiles for Reproducible Data Science.” https://doi.org/10.31219/osf.io/fsd7t.

Perez De Rosso, Santiago, and Daniel Jackson. 2013. “What’s Wrong with Git?” In Proc. 2013 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (Onward!’13). https://doi.org/10.1145/2509578.2509584.

Petre, Marian, and Greg Wilson. 2014. “Code Review for and by Scientists.” In Proc. Second Workshop on Sustainable Software for Science: Practice and Experience. https://doi.org/arXiv:1407.5648.

Quenneville, Joël. 2018. “Code Review.” https://github.com/thoughtbot/guides/tree/master/code-review.

Ray, Eric J., and Deborah S. Ray. 2014. Unix and Linux: Visual Quickstart Guide. Peachpit Press.

Sankarram, Sandya. 2018. “Unlearning Toxic Behaviors in a Code Review Culture.” https://medium.freecodecamp.org/unlearning-toxic-behaviors-in-a-code-review-culture-b7c295452a3c.

Schankin, Andrea, Annika Berger, Daniel V. Holt, Johannes C. Hofmeister, Till Riedel, and Michael Beigl. 2018. “Descriptive Compound Identifier Names Improve Source Code Comprehension.” In Proc. 26th Conference on Program Comprehension (Icpc’18). ACM Press. https://doi.org/10.1145/3196321.3196332.

Scopatz, Anthony, and Kathryn D. Huff. 2015. Effective Computation in Physics. O’Reilly Media.

Segal, Judith. 2005. “When Software Engineers Met Research Scientists: A Case Study.” Empirical Software Engineering 10 (4): 517–36. https://doi.org/10.1007/s10664-005-3865-y.

Sholler, Dan, Igor Steinmacher, Denae Ford, Mara Averick, Mike Hoye, and Greg Wilson. 2019. “Ten Simple Rules for Helping Newcomers Become Contributors to Open Projects.” Edited by Scott Markel. PLOS Computational Biology 15 (9): e1007296. https://doi.org/10.1371/journal.pcbi.1007296.

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

Steinmacher, Igor, Igor Scaliante Wiese, Tayana Conte, Marco Aurélio Gerosa, and David Redmiles. 2014. “The Hard Life of Open Source Software Project Newcomers.” In Proc. 7th International Workshop on Cooperative and Human Aspects of Software Engineering (CHASE/14). https://doi.org/10.1145/2593702.2593704.

Taschuk, Morgan, and Greg Wilson. 2017. “Ten Simple Rules for Making Research Software More Robust.” PLoS Computational Biology 13 (4). https://doi.org/10.1371/journal.pcbi.1005412.

Tierney, Nicholas J, and Karthik Ram. 2020. “A Realistic Guide to Making Data Available Alongside Code to Improve Reproducibility.” https://arxiv.org/abs/2002.11626.

Wickes, Elizabeth, and Ayla Stein. 2016. “Data Documentation Material.” http://hdl.handle.net/2142/91611.

Wilson, Greg. 2019a. Teaching Tech Together. Taylor & Francis.

———. 2019b. “Ten Quick Tips for Creating an Effective Lesson.” Edited by Francis Ouellette. PLOS Computational Biology 15 (4): e1006915. https://doi.org/10.1371/journal.pcbi.1006915.

Wilson, Greg, D. A. Aruliah, C. Titus Brown, Neil P. Chue Hong, Matt Davis, Richard T. Guy, Steven H. D. Haddock, et al. 2014. “Best Practices for Scientific Computing.” PLoS Biology 12 (1). https://doi.org/10.1371/journal.pbio.1001745.

Wilson, Greg, Jennifer Bryan, Karen Cranston, Justin Kitzes, Lex Nederbragt, and Tracy K. Teal. 2017. “Good Enough Practices in Scientific Computing.” PLoS Computational Biology 13 (6). https://doi.org/10.1371/journal.pcbi.1005510.

Xu, Tianyin, Long Jin, Xuepeng Fan, Yuanyuan Zhou, Shankar Pasupathy, and Rukma Talwadker. 2015. “Hey, You Have Given Me Too Many Knobs!: Understanding and Dealing with over-Designed Configuration in System Software.” In Proc. 10th Joint Meeting on Foundations of Software Engineering (FSE’2015). ACM Press. https://doi.org/10.1145/2786805.2786852.

Zampetti, Fiorella, Carmine Vassallo, Sebastiano Panichella, Gerardo Canfora, Harald Gall, and Massimiliano Di Penta. 2020. “An Empirical Characterization of Bad Practices in Continuous Integration.” Empirical Software Engineering 25 (2): 1095–1135. https://doi.org/10.1007/s10664-019-09785-8.

Zhang, Letian. 2020. “An Institutional Approach to Gender Diversity and Firm Performance.” Organization Science 31 (2).