A Case for Human Values in Software Engineering. Jon Whittle, Maria Angela Ferrario, Will Simm, Waqar Hussain. In IEEE Softw. 38(1): 106-113 (2021)
Is software the result of top-down intelligent design or evolution?. Edward A. Lee. 2018. Commun. ACM 61, 9 (August 2018), 34-36. (video and book)
Crowdsourcing in Software Engineering: Models, Motivations, and Challenges. LaToza, Thomas & van der Hoek, Andre. IEEE Software (2016). 33. 74-80. 10.1109/MS.2016.12.
Software Heritage: Why and How to Preserve Software Source Code, by Roberto Di Cosmo, Stefano Zacchiroli. 2017.
Why Software Is Eating The World, By Marc Andreessen, In wsj. August 20, 2011.
Software development in disruptive times, by João Varajão. 2021. Commun. ACM 64, 10 (October 2021), 32–35.
Surviving Software Dependencies, by Russ Cox, Communications of the ACM, September 2019.
Software Engineering at Google, by Fergus Henderson, 2019.
Why are many business instilling a DevOps culture into their organization?, by Diaz, J., López-Fernández, D., Perez, J., and González-Prieto, Á., 2020.
Why Google Stores Billions of Lines of Code in a Single Repository, by Rachel Potvin, Josh Levenberg. In Communications of the ACM, Vol. 59 No. 7, Pages 78-87, 2016.
Development and Deployment at Facebook, by Dror Feitelson, Eitan Frachtenberg, and Kent Beck. In IEEE Internet Computing 17, 4 (July 2013).
Deploying Search Based Software Engineering with Sapienz at Facebook, by Nadia Alshahwan, Xinbo Gao, Mark Harman, Yue Jia, Ke Mao, Alexander Mols, Taijin Tei, and Ilya Zorin. In Search-Based Software Engineering 2018, Springer.
The antifragile organization, by Ariel Tseitlin. In Commun. ACM 56, 8 (August 2013).
How We Build Code at Netflix. M. McGarr, E. Bukoski, and B. Moyles. 2016.
Einas Haddad. Service-Oriented Architecture: Scaling the Uber Engineering Codebase As We Grow. 2015.
Microservices. J. Thones. In: IEEE Software 32.1 (2015), pp. 116–116. doi: 10.1109/MS.2015.11.
Long Term Effects of Mutation Testing, by Goran Petrovic Gordon Fraser Marko Ivanković René Just. 2021 IEEE/ACM 43rd International Conference on Software Engineering (ICSE), IEEE, pp. 910-921
Practical Mutation Testing at Scale: A view from Google, by Goran Petrovic Gordon Fraser Marko Ivanković René Just. IEEE Transactions on Software Engineering (2021)
What It Would Take to Use Mutation Testing in Industry--A Study at Facebook, by Moritz Beller, Chu-Pan Wong, Johannes Bader, Andrew Scott, Mateusz Machalica, Satish Chandra, Erik Meijer. In ICSE 2021 SEIP - Software Engineering in Practice.
A Large-Scale Study of Test Coverage Evolution, by Michael Hilton, Jonathan Bell and Darko Marinov. In Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering (ASE ’18), ACM.
Chaos Engineering, by Ali Basiri, Niosha Behnam, Ruud de Rooij, Lorin Hochstein, Luke Kosewski, Justin Reynolds, Casey Rosenthal. In IEEE Software vol. 33 no. 3, p. 35-41, 2016.
Automating chaos experiments in production, Ali Basiri, Lorin Hochstein, Nora Jones, Haley Tucker. In Proceedings of the 41st International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP '19). IEEE Press, Piscataway, NJ, USA, 31-40.
Understanding flaky tests: the developer’s perspective. Moritz Eck, Fabio Palomba, Marco Castelluccio, and Alberto Bacchelli. 2019. In ESEC/FSE 2019.
A Large-Scale Study of Programming Languages and Code Quality in GitHub, by Baishakhi Ray, Daryl Posnett, Premkumar Devanbu, Vladimir Filkov. In Communications of the ACM, Vol. 60 No. 10, Pages 91-100, Oct. 2017.
A programmable programming language, by Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi, Eli Barzilay, Jay McCarthy, and Sam Tobin-Hochstadt. In Communications of the ACM 61, 3, Pages 62-71, Feb. 2018. DOI: https://doi.org/10.1145/3127323
Against a Universal Definition of 'Type', by Tomas Petricek. In Proceedings of Onward! Essays 2015.
In Search of Types, by Stephen Kell. In Proceedings of the 2014 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software (Onward! 2014).
To Type or Not to Type: Quantifying Detectable Bugs in JavaScript by Z. Gao, C. Bird and E. T. Barr. In IEEE/ACM 39th International Conference on Software Engineering (ICSE'17), Buenos Aires, 2017, pp. 758-769.
On understanding data abstraction, revisited by William R. Cook. In the 24th ACM SIGPLAN conference on Object Oriented Programming Systems Languages and Applications (OOPSLA '09), 2009.
A survey of techniques for approximate computing, by Mittal, S. ACM Computing Surveys (CSUR), 48(4), 62 (2016).
Traits: Composable Units of Behavior, by Nathanael Schärli, Stéphane Ducasse, Oscar Nierstrasz and Andrew Black. In European Conference on Object-Oriented Programming (ECOOP 2003).
Aspect-oriented programming, by Kiczales G. et al. European Conference on Object-Oriented Programming (ECOOP 1997).
Automatic patch generation by learning correct code, by Fan Long and Martin Rinard. In Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL '16). ACM, New York, NY, USA, 298-312.
The ABC of Software Engineering Research. Klaas-Jan Stol and Brian Fitzgerald. 2018. ACM Trans. Softw. Eng. Methodol. 27, 3, Article 11 (October 2018).
Repeatability in Computer Systems Research By Christian Collberg, Todd A. Proebsting. Communications of the ACM, March 2016, Vol. 59 No. 3, Pages 62-69.