MétaCan
Menu
Retour à la cohorte
Enregistrement W4414586197 · doi:10.1002/spe.70024

Project Templating and Onboarding With Cookiecutter: Foundations, Uses, and Guidelines

2025· article· en· W4414586197 sur OpenAlexafffund
Juergen Dingel, Alex Sun, Hesham ElAbd, Nathanael Yao, Andrew Boulos, Ali Tizghadam

Notice bibliographique

RevueSoftware Practice and Experience · 2025
Typearticle
Langueen
DomaineComputer Science
ThématiqueAdvanced Software Engineering Methodologies
Établissements canadiensTelus (Canada)Queen's University
Organismes subventionnairesNatural Sciences and Engineering Research Council of CanadaMitacs
Mots-clésOnboardingContext (archaeology)Python (programming language)Web applicationSoftwareQuality (philosophy)Metadata

Résumé

récupéré en direct d'OpenAlex

ABSTRACT Objectives Cookiecutter is a popular, mature open‐source Python library for automating the creation of customized projects from templates. This kind of scaffolding is useful for enabling reuse, encapsulating expertise, achieve uniformity, and facilitating project creation for a range of languages and domains, including microservices, web applications, and data science. Despite their success, there is a lack of descriptions of general‐purpose project templating tools such as Cookiecutter in the literature. The objective of the paper is to provide a description of Cookiecutter that is useful for researchers and practitioners. Methods Our work is informed by our own use of Cookiecutter in the context of an industrial project. We describe Cookiecutter with the help of four different research questions. The first two relate to how Cookiecutter works (RQ1) and how it is used (RQ2). The latter two are concerned with providing guidance to users of Cookiecutter (RQ3) and identifying challenges that they may face (RQ4). Result Our answer to question RQ1 provides a succinct, high‐level description of the structure of Cookiecutter templates and Cookiecutter's execution semantics. For question RQ2, we provide an analysis of the 100 most popular Cookiecutter templates on GitHub and descriptions of three applications of Cookiecutter in different domains. For question RQ3, we identify quality attributes for Cookiecutter projects together with best practice recommendations. For question RQ4, our discussion of challenges is structured around different lifecycle activities related to the overall management of Cookiecutter templates. The potential for research results in related areas such as software product lines, feature and variability modeling, and model‐driven engineering to help address these challenges is highlighted. Conclusion The paper provides a comprehensive discussion of Cookiecutter, a successful general‐purpose project templating tool with demonstrated industrial use. The discussion covers fundamental and practical aspects of Cookiecutter and thus targets practitioners as well as researchers interested in general‐purpose templating and Cookiecutter in particular.

Récupéré en direct depuis OpenAlex et désinversé. Les résumés ne sont pas conservés dans cette base de données : les index inversés représentent 8,6 Go des 9,3 Go de texte de la base, et le serveur dispose de 13 Go libres.

Comment cette classification a été obtenuedéplier

Prédiction machine sur la base complète

Imitation des enseignants

Ni prévalence calibrée, ni vérité terrain. Validation humaine à venir. Le volet Gemma est une étiquette directe du modèle pour chaque travail de la base, lue sur la notice réduite au titre. Le volet Codex est un classifieur appris des 10 348 étiquettes directes de Codex et calibré sur les taux pondérés de l'échantillon; les champs sans appui suffisant ne portent aucun appel Codex. Le mode candidate est l'union des deux volets; le consensus est leur intersection. Ces sorties portent le statut machine_predicted_unvalidated et ne sont pas des étiquettes humaines.

score de la tête « metaresearch » (Codex)0,028
score de la tête « metaresearch » (Gemma)0,095
Version: metacan-v3-hybrid-931329e0061cStatut de validation: machine_predicted_unvalidated
Catégories candidatesaucune
Catégories consensuellesaucune
DomaineSignal candidat: aucune · Signal consensuel: aucune
Devis d'étudeSignal candidat: Sans objet · Signal consensuel: aucune
GenreSignal candidat: Méthodes · Signal consensuel: Méthodes
Score de désaccord entre enseignants0,028
Score d'incertitude au seuil0,148

Scores du classifieur distillé par catégorie (deux têtes)

CatégorieCodexGemma
Métarecherche0,0280,095
Méta-épidémiologie (sens strict)0,0010,002
Méta-épidémiologie (sens large)0,0010,001
Bibliométrie0,0040,003
Études des sciences et des technologies0,0020,006
Communication savante0,0080,013
Science ouverte0,0040,008
Intégrité de la recherche0,0020,003
Charge utile insuffisante (le modèle a refusé de juger)0,0090,006

Scores machine (provisoires)

Les deux têtes enseignantes du modèle étudiant, lues sur ce travail. Un score ordonne la base pour la relecture; il n'affirme jamais une catégorie, et le statut de validation accompagne chaque rangée tel quel.

Scores de référence d'un modèle non mature (critères de maturité non atteints, 7 itérations). Un score ordonne; il n'affirme jamais une catégorie.

Tête enseignante Opus0,060
Tête enseignante GPT0,394
Écart entre enseignants0,334 · la distance entre les deux têtes enseignantes sur ce seul travail
Statut de validationscore_only:v0-immature-baseline · tel quel depuis la passe de notation : score_only signifie que le nombre peut ordonner les travaux, et qu'aucune étiquette de catégorie n'en découle

Classification

machine, non validée

Prédiction automatique; un appel candidat d’une seule source (Gemma direct ou Codex distillé), pas un consensus.

Les modèles n’ont appliqué aucune catégorie : rien dans la taxonomie ne correspondait à ce travail.
Devis d'étudeSans objet
Domainenon disponible
GenreMéthodes

Le détail, modèle par modèle et score par score, se trouve en fin de page sous « Comment cette classification a été obtenue ».

En bref

Citations0
Publié2025
Routes d'admission2
Résumé présentoui

Explorer davantage

Même revueSoftware Practice and ExperienceMême sujetAdvanced Software Engineering MethodologiesTravaux en français237 207