diff --git a/.gitignore b/.gitignore index b6e4761..99efc91 100644 --- a/.gitignore +++ b/.gitignore @@ -127,3 +127,4 @@ dmypy.json # Pyre type checker .pyre/ +.DS_Store diff --git a/CITATION.cff b/CITATION.cff new file mode 100644 index 0000000..d37d659 --- /dev/null +++ b/CITATION.cff @@ -0,0 +1,24 @@ +# This CITATION.cff file was generated with cffinit. +# Visit https://bit.ly/cffinit to generate yours today! + +cff-version: 1.2.0 +title: Markov Chain Monte Carlo for fun and profit +message: >- + This is just an example citation file, I don't + expect you to actually cite this! +type: software +authors: + - given-names: Thomas Connor + family-names: Hodson + email: thomas.c.hodson@gmail.com + affiliation: Imperial College London + orcid: 'https://orcid.org/0000-0002-4121-4772' +repository-code: >- + https://github.com/ImperialCollegeLondon/ReCoDE_MCMC_for_fun_and_profit +url: >- + https://github.com/ImperialCollegeLondon/ReCoDE_MCMC_for_fun_and_profit +abstract: >- + An exemplar project designed to showcase best + practices in developing scientific software. Part + of the ReCode Project at Imperial College London. +license: MIT diff --git a/LICENSE b/LICENSE index 764bf35..71807fd 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2022 Tom +Copyright (c) 2022 Thomas Hodson Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index bc4375b..37f81ce 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,59 @@ -# ReCoDE_MCMCFF -๐ŸŽฒ โ›“๏ธ ๐Ÿ‘‰ ๐Ÿงช An exemplar project designed to showcase best practices in developing scientific software. Part of the ReCode Project at Imperial College London +

๐ŸŽฒ โ›“๏ธ ๐Ÿ‘‰ ๐Ÿงช Markov Chain Monte Carlo for fun and profit

+

+ Using random numbers to do all the things. +

+ +

+ + + + + + + +

+ +This is an exemplar project designed to showcase best practices in developing scientific software as part of the ReCode Project at Imperial College London. + +**You do not need to know or care about Markov Chain Monte Carlo for this to be useful to you.** + +Rather this project is primarily designed to showcase the tools and practices available to you when developing scientific softare projects. Maybe you are a PhD student just starting or a researcher just about to embark on a larger scale softare project there should be something intersting here for you. + +## How to use this repo + +Take a look at a the table of contents below and see if there are any topics that might be useful to you. The actual code lives in `./code` and the documentation in `./learning` + +## Table of contents +1. [A short introduction][intro] +2. The problem +3. A quick and dirty solution +4. Planning out a larger software project +5. Python development environnments: Pip, Conda, setup.py and all that. +6. Test driven development: it's fun. +7. Using Jupyter Notebooks during development +8. Documentation +9. Software Reproducability +10. Citing software in a publication: CITATION.cff + +## The map +``` bash +. +โ”œโ”€โ”€ CITATION.cff #This file describes how to cite the work contained in this repository. +โ”œโ”€โ”€ LICENSE # Outlines what legal rights you have to use this software. +โ”œโ”€โ”€ README.md # You are here! +โ”œโ”€โ”€ code +โ”‚ย ย  โ”œโ”€โ”€ README.md # Human readable information about the little python package in here +โ”‚ย ย  โ”œโ”€โ”€ pyproject.toml # Machine readable information about that same package +โ”‚ย ย  โ”œโ”€โ”€ setup.cfg # Tells Pip how to install this package +โ”‚ย ย  โ”œโ”€โ”€ src +โ”‚ย ย  โ”‚ย ย  โ””โ”€โ”€ MCFF # The actual code lives in here! +โ”‚ย ย  โ””โ”€โ”€ tests # automated tests for the code +โ””โ”€โ”€ learning # Supporting documentation + โ””โ”€โ”€ Untitled.ipynb +``` + + + + +[TDD]: http://placeholder_link.com/ +[intro]: http://placeholder_link.com/