Scholarship
Publications, reports, funded curricula, and other citable outputs from my work in research data services, open science, and library education.
- Curriculum
Agentic Research Workflows: AI Coding, Validation, and Research Responsibility
A Carpentries-format lesson (pre-alpha) on working with AI coding agents while maintaining rigorous validation and research integrity — a Living Spec, a validation stack, and explicit approval gates in place of intuition-based "vibe coding."
Cite this
Dennis, T. (2026). Agentic Research Workflows: AI Coding, Validation, and Research Responsibility.
@misc{dennis2026, title = {Agentic Research Workflows: AI Coding, Validation, and Research Responsibility}, author = {Dennis, Tim}, year = {2026}, } - Curriculum
Sharing Research Software: Reproducible, Citable, and Discoverable
A half-day Carpentries Incubator lesson on making research software findable, citable, and reusable. Learners start with a minimal GitHub repository and leave with a licensed, versioned release, a CITATION.cff file, a Zenodo DOI, and improved metadata for discovery.
Cite this
Dennis, T. et al. (2026). Sharing Research Software: Reproducible, Citable, and Discoverable. Zenodo. https://doi.org/10.5281/zenodo.21400573
@misc{dennis2026, title = {Sharing Research Software: Reproducible, Citable, and Discoverable}, author = {Dennis, Tim and Phan, Leigh and Otsuji, Reid and Langdon, Laura and Padilla, Karla}, year = {2026}, howpublished = {Zenodo}, doi = {10.5281/zenodo.21400573}, url = {https://doi.org/10.5281/zenodo.21400573}, } - Curriculum
Library Carpentry: Introducing Computational Thinking
A pen-and-paper lesson on computational thinking — problem decomposition, algorithm development, and abstraction — as a precursor to learning to code. Originally developed by Belinda Weaver and ported into Carpentries lesson format; I've since made significant edits to the lesson content.
Cite this
Weaver, B. & Dennis, T. (2024). Library Carpentry: Introducing Computational Thinking. Library Carpentry.
@misc{weaver2024, title = {Library Carpentry: Introducing Computational Thinking}, author = {Weaver, Belinda and Dennis, Tim}, year = {2024}, howpublished = {Library Carpentry}, } - Curriculum
Library Carpentry: Python Intro for Libraries
Introduces Python to librarians and library professionals for automating routine data and file tasks.
Cite this
Hennesy, C. et al. (2024). Library Carpentry: Python Intro for Libraries. Zenodo. https://doi.org/10.5281/zenodo.12582386
@misc{hennesy2024, title = {Library Carpentry: Python Intro for Libraries}, author = {Hennesy, Cody and Leinweber, Katrin and Dennis, Tim and Peterson, Scott and Vankoningsveld, Richard and Wickes, Elizabeth and Moore, Nathan and Bostroem, Azalee and Mehta, Prateek and Critchlow, Matt and Dwaraknath, Shyam and Ankenbrand, Markus and Palmqist, David and Martinez, Carlos and Heggø, Dan Michael O.}, year = {2024}, howpublished = {Zenodo}, doi = {10.5281/zenodo.12582386}, url = {https://doi.org/10.5281/zenodo.12582386}, } - Curriculum
Lessons for Librarians in Open Science (IMLS Curriculum)
A 14+ lesson open science curriculum for library professionals, funded by IMLS and designed for integration into the Carpentries ecosystem.
- Curriculum
Library Carpentry: Introduction to R
Introduces R programming to librarians and library professionals, covering data cleaning, transformation, and visualization with dplyr and ggplot2.
Cite this
Dennis, T. et al. (2023). Library Carpentry: Introduction to R. Zenodo. https://doi.org/10.5281/zenodo.7883945
@misc{dennis2023, title = {Library Carpentry: Introduction to R}, author = {Dennis, Tim and Beh, Jia Qi and Iakovakis, Clarke and Little, John and Guillou, Stéphane and Lin, Sarah}, year = {2023}, howpublished = {Zenodo}, doi = {10.5281/zenodo.7883945}, url = {https://doi.org/10.5281/zenodo.7883945}, } - Report
UC Open Source Program Office Network (Sloan Foundation Grant)
$1.85M Sloan Foundation award to build a six-campus UC OSPO network focused on open source sustainability, governance, and education.
- Output
Library Carpentry Curriculum Advisory Group
Leadership contributions to Library Carpentry governance, lesson adoption processes, and curriculum quality.
- Book chapter
From a Data Archive to Data Science: Supporting Current Research
Book chapter on how academic library data services have evolved from archival functions to active research support, co-authored with colleagues across UC and beyond.
- Output
I See, UC, We All See Carpentries: Collaboratively Scaling Workshop Instruction Across a University System
Account of building the UC Carpentries network — coordinating instructor training, workshop delivery, and shared infrastructure across 10 UC campuses.
- Curriculum
Library Carpentry: Tidy Data for Librarians
Open curriculum on tidy data principles for library professionals, published to Zenodo as a citable, reusable teaching resource.
Cite this
Lake, S. et al. (2020). Library Carpentry: Tidy Data for Librarians. Zenodo. https://doi.org/10.5281/zenodo.3954067
@misc{lake2020, title = {Library Carpentry: Tidy Data for Librarians}, author = {Lake, Sherry and Dennis, Tim and Cope, Jez and Michonneau, Francois and Erdmann, Christopher and Oliver, Jeffrey and Baker, James and Wallace, Niamh and Sklar, Annelise and Atwood, Thea and Volkov, Alex and Weaver, Belinda and Becker, Erin Alison and Frisina, Jacqueline and Lacey, Ken and Reed, Phil and Peterson, Scott Carl and Kiburu, Serah Anne Njambi}, year = {2020}, howpublished = {Zenodo}, doi = {10.5281/zenodo.3954067}, url = {https://doi.org/10.5281/zenodo.3954067}, } - Curriculum
Library Carpentry: Introduction to Data
Introduces core data concepts for librarians and library professionals — data structures, formats, and using regular expressions to find and match data. Author list reflects lead contributors; see the Zenodo record for full community credit.
Cite this
Baker, J. et al. (2019). Library Carpentry: Introduction to Data. Zenodo. https://doi.org/10.5281/zenodo.3264946
@misc{baker2019, title = {Library Carpentry: Introduction to Data}, author = {Baker, James and Erdmann, Christopher and Dennis, Tim and McAulay, Elizabeth Lisa and Laster, Shari and Michonneau, François and Marwaha, Kunal and Pival, Paul R. and Leinweber, Katrin and Volkov, Alex and Heggø, Dan Michael O.}, year = {2019}, howpublished = {Zenodo}, doi = {10.5281/zenodo.3264946}, url = {https://doi.org/10.5281/zenodo.3264946}, } - Curriculum
Library Carpentry: Introduction to Git
Introduces version control with Git and GitHub for librarians and library professionals — tracking changes, committing work, and collaborating. Author list reflects lead contributors; see the Zenodo record for full community credit.
Cite this
Erdmann, C. et al. (2019). Library Carpentry: Introduction to Git. Zenodo. https://doi.org/10.5281/zenodo.3265772
@misc{erdmann2019, title = {Library Carpentry: Introduction to Git}, author = {Erdmann, Christopher and Leinweber, Katrin and Weaver, Belinda and Baker, James and McGregor, Nora and Heggø, Dan Michael O. and Duckles, Jonah and Brooks-Kieffer, Jamene and Dennis, Tim and Oliver, Jeffrey}, year = {2019}, howpublished = {Zenodo}, doi = {10.5281/zenodo.3265772}, url = {https://doi.org/10.5281/zenodo.3265772}, } - Curriculum
Library Carpentry: Introduction to OpenRefine
Introduces OpenRefine for librarians and library professionals — cleaning and transforming messy data. Author list reflects lead contributors; see the Zenodo record for full community credit.
Cite this
Baker, J. et al. (2019). Library Carpentry: Introduction to OpenRefine. Zenodo. https://doi.org/10.5281/zenodo.3266144
@misc{baker2019, title = {Library Carpentry: Introduction to OpenRefine}, author = {Baker, James and Erdmann, Christopher and Dennis, Tim and Bangert, Daniel and Williamson, Evan and Jamison, Jamie and Zimmerman, Naupaka and Emonet, Rémi and Rozum, Betty and Koziar, Katherine and Honeyman, Tom and Teal, Tracy}, year = {2019}, howpublished = {Zenodo}, doi = {10.5281/zenodo.3266144}, url = {https://doi.org/10.5281/zenodo.3266144}, } - Curriculum
Library Carpentry: Introduction to the Shell
Introduces the Unix shell for librarians and library professionals — navigating the command line and using loops and pipes to link commands. Author list reflects lead contributors; see the Zenodo record for full community credit.
Cite this
Baker, J. et al. (2019). Library Carpentry: Introduction to the Shell. Zenodo. https://doi.org/10.5281/zenodo.3266085
@misc{baker2019, title = {Library Carpentry: Introduction to the Shell}, author = {Baker, James and Erdmann, Christopher and Dennis, Tim and Heggø, Dan Michael and Leinweber, Katrin}, year = {2019}, howpublished = {Zenodo}, doi = {10.5281/zenodo.3266085}, url = {https://doi.org/10.5281/zenodo.3266085}, } - Curriculum
Library Carpentry: Introduction to SQL
Introduces SQL for librarians and library professionals — querying and managing structured data. Author list reflects lead contributors; see the Zenodo record for full community credit.
Cite this
Erdmann, C. et al. (2019). Library Carpentry: Introduction to SQL. Zenodo. https://doi.org/10.5281/zenodo.3266102
@misc{erdmann2019, title = {Library Carpentry: Introduction to SQL}, author = {Erdmann, Christopher and Baker, James and Rios, Fernando and Chan, Janice and Dennis, Tim and Weaver, Belinda and Sichani, Anna-Maria and Brooks-Kieffer, Jamene and Steltenpool, Ruud}, year = {2019}, howpublished = {Zenodo}, doi = {10.5281/zenodo.3266102}, url = {https://doi.org/10.5281/zenodo.3266102}, } - Output
Top 10 FAIR Data and Software Things
Collaboratively produced reference resource summarizing the top 10 practices for making research data and software Findable, Accessible, Interoperable, and Reusable (FAIR).
Cite this
Erdmann, C. et al. (2019). Top 10 FAIR Data and Software Things. Zenodo. https://doi.org/10.5281/zenodo.2555498
@misc{erdmann2019, title = {Top 10 FAIR Data and Software Things}, author = {Erdmann, Christopher and Simons, Natasha and Otsuji, Reid and Labou, Stephanie and Johnson, Ryan and Castelao, Guilherme and Villas Boas, Bia and Lamprecht, Anna-Lena and Martinez Ortiz, Carlos and Garcia, Leyla and Kuzak, Mateusz and Martinez, Paula Andrea and Stokes, Liz and Honeyman, Tom and Wise, Sharyn and Quan, Josh and Peterson, Scott and Neeser, Amy and Karvovskaya, Lena and Lange, Otto and Witkowska, Iza and Flores, Jacques and Bradley, Fiona and Hettne, Kristina and Verhaar, Peter and Companjen, Ben and Sesink, Laurents and Schoots, Fieke and Schultes, Erik and Kaliyaperumal, Rajaram and Tóth-Czifra, Erzsébet and Azevedo, Ricardo De Miranda and Muurling, Sanne and Brown, John and Chan, Janice and Quigley, Niamh and Federer, Lisa and Joubert, Douglas and Dillman, Allissa and Wilkins, Kenneth and Chandramouliswaran, Ishwar and Navale, Vivek and Wright, Susan and Di Giorgio, Silvia and Fasemore, Mandela and Förstner, Konrad and Sauerwein, Till and Seidlmayer, Eva and Zeitlin, Ilja and Bacon, Susannah and Hannan, Katie and Ferrers, Richard and Russell, Keith and Whitmore, Deidre and Dennis, Tim}, year = {2019}, howpublished = {Zenodo}, doi = {10.5281/zenodo.2555498}, url = {https://doi.org/10.5281/zenodo.2555498}, } - Book chapter
Using R and ggvis to Create Interactive Graphics for Exploratory Data Analysis
Book chapter on using R and the ggvis package to build interactive, browser-based visualizations for exploratory data analysis in library and research contexts.