Code
from rich.console import Console
= Console()
console = count_software()
count print(
console.f":rocket: Here are {count} software projects to which I have contributed!"
)
🚀 Here are 128 software projects to which I have contributed!
I recently hosted an episode of Software Engineering Radio called "Goran Petrovic on Mutation Testing at Google"!
🚀 Here are 128 software projects to which I have contributed!
Many, but not all, of these software tools are connected to the research papers and research presentations published by me and my research collaborators. For instance, the papers (Kinneer et al. 2015a)
Interested in conducting research that builds or cites on the research papers and research presentations published by me and my research collaborators? You can check out these resources for abstracts of conference talks, BiBTeX references to papers, and templates for writing a research paper or a curriculum vitae. For instance, the avm-bibliography documents the research articles cited in the (McMinn and Kapfhammer 2016)
While I don’t release the LaTeX source code of most of the research papers that my research collaborators and I publish, I’ve made the GitHub repository of select papers publicly available. For instance, the source code that results in the paper (McMinn, Kapfhammer, and Wright 2016)
Did you know that I use LaTeX, JavaScript, Markdown, and other programming languages to create many of research presentations? By studying the source code for presentations like (Kapfhammer 2021a)
Whenever possible, my collaborators and I publish replication packages to support our research papers and research presentations. For instance, you can review all of the survey data from (Parry et al. 2022b)
My students, colleagues, and I create and maintain several tools that support the automated assessment of the source code and technical writing that students complete as part of a course project. You can learn more about the tools that we have implemented and deployed by checking out presentations like (Kapfhammer 2018)
Please visit the web site for each of my course platforms to learn more about the specific technologies that we use to deploy each site that I use for teaching.
Prior to developing course platforms for each of the classes that I teach, I created GitHub repositories and/or organizations for every course and linked to them from my professional web site’s teaching page. While I no longer maintain out-of-date course content and instead encourage learners to visit my course platforms, you may contact me with your request for old materials.
I aim to have a well-documented set of software tools that I run on the laptop that I use for all of my professional activities. I hope that some of these configurations can help you to setup your own workstation for teaching, research, and software engineering. Checkout my configuration of NixOS!
Whenever I can do so, I participate in the maintenance and enhancement of open-software software tools by reporting defects and participating in discussions. Along with documenting my software adventures, I aim for these notes to help and encourage the maintainers of open-source software.
Although I no longer maintain any of these software tools, I’m glad to make them available as a history of prior work and as a source of inspiration and ideas for software engineers.